读书人

【Android】说做就做:都市列表+卫星m

发布时间: 2012-08-26 16:48:06 作者: rapoo

【Android】说做就做:都市列表+卫星地图
前言:为了得奖。。。android。。。T_T。。。

完成notepad 3部曲,又看了其他人的MapView使用例子,手痒啊,做了个简陋的都市列表,并用MapView来看卫星地图,还有目前路况(traffic,如果有的话),Zoom In/Out,纯抄袭,羞愧中。。。

基本上基于notepad样板,做了个City的list:(偷工减料,static一下了,其实应该从db或者web service上面拿。。。)

  • ????????mc.animateTo(p);??
  • ????????// 21是最zoom in的一级,一共是1-21级
  • ????????mc.zoomTo(21);??

  • ????????setContentView(myMapView);??
  • ????????// 切换到卫星地图
  • ????????myMapView.toggleSatellite();??
    搞定显示,接下来是key events:
    i: zoom in
    o: zoom out
    s: satellite
    t: traffic
    java 代码
    1. public?boolean?onKeyDown(int?keyCode,?KeyEvent?event)?{??
    2. ????????if?(keyCode?==?KeyEvent.KEYCODE_I)?{??
    3. ????????????// zoom in
    4. ????????????myMapView.getController().zoomTo(myMapView.getZoomLevel()?+?1);??
    5. ????????????return?true;??
    6. ????????}?else?if?(keyCode?==?KeyEvent.KEYCODE_O)?{??
    7. ????????????// zoom out?
    8. ????????????myMapView.getController().zoomTo(myMapView.getZoomLevel()?-?1);??
    9. ????????????return?true;??
    10. ????????}?else?if?(keyCode?==?KeyEvent.KEYCODE_S)?{??
    11. ??????????// 卫星地图
    12. ????????????myMapView.toggleSatellite();??
    13. ????????????return?true;??
    14. ????????}?else?if?(keyCode?==?KeyEvent.KEYCODE_T)?{??
    15. ????????????// traffic,路况
    16. ????????????myMapView.toggleTraffic();??
    17. ????????????return?true;??
    18. ????????}??
    19. ????????return?false;??
    20. ????}???

    最后加个回到城市list的menu:

    java 代码
    1. @Override??
    2. ????public?boolean?onCreateOptionsMenu(Menu?menu)?{??
    3. ????????super.onCreateOptionsMenu(menu);??
    4. ????????menu.add(0,?EXIT_ID,?R.string.exit_citymap);??
    5. ????????return?true;??
    6. ????}??
    7. ??????
    8. ????@Override??
    9. ????public?boolean?onMenuItemSelected(int?featureId,?Item?item)?{??
    10. ????????super.onMenuItemSelected(featureId,?item);??
    11. ????????switch(item.getId())?{??
    12. ????????case?EXIT_ID:??
    13. ????????????finish();??
    14. ????????????break;??
    15. ????????}??
    16. ??????????
    17. ????????return?true;??
    18. ????}??


    1 楼 lordhong 2007-11-19 靠!有附件就发不上去,去掉附件就可以了,JE大bug啊。。。附件续上。。。 2 楼 lordhong 2007-11-19 我用adb install lordhong.MapDemo1.apk,然后显示0 bytes虾米的,emulator里面也找不到。。。怎么回事?严格按照google doc:
    Running an Android Application

    To run a compiled application, you will upload the .apk file to the /data/app/ directory in the emulator using the adb tool as described here:

    1. Start the emulator (run <your_sdk_dir>/tools/emulator from the command line)
    2. On the emulator, navigate to the home screen (it is best not to have that application running when you reinstall it on the emulator; press the Home key to navigate away from that application).
    3. Run adb install myproject/bin/<appname>.apk to upload the executable. So, for example, to install the Lunar Lander sample, navigate in the command line to <your_sdk_dir>/sample/LunarLander and type ../../tools/adb install bin/LunarLander.apk
    4. In the emulator, open the list of available applications, and scroll down to select and start your application.

    —T.T... 3 楼 crazyox 2007-11-19 android做出来的东西可以直接在手机上看? 4 楼 crazyox 2007-11-19 今天javaeye是怎么了? 老打不开自己的博客? 5 楼 fins 2007-11-19 lordhong 写道我用adb install lordhong.MapDemo1.apk,然后显示0 bytes虾米的,emulator里面也找不到。。。怎么回事?严格按照google doc:
    Running an Android Application

    To run a compiled application, you will upload the .apk file to the /data/app/ directory in the emulator using the adb tool as described here:

    1. Start the emulator (run <your_sdk_dir>/tools/emulator from the command line)
    2. On the emulator, navigate to the home screen (it is best not to have that application running when you reinstall it on the emulator; press the Home key to navigate away from that application).
    3. Run adb install myproject/bin/<appname>.apk to upload the executable. So, for example, to install the Lunar Lander sample, navigate in the command line to <your_sdk_dir>/sample/LunarLander and type ../../tools/adb install bin/LunarLander.apk
    4. In the emulator, open the list of available applications, and scroll down to select and start your application.

    —T.T...

    进 adb shell里 看不到?? 如果能看到 rm了 然后从新 push吧 6 楼 fins 2007-11-19 lordhong 写道我用adb install lordhong.MapDemo1.apk,然后显示0 bytes虾米的,emulator里面也找不到。。。怎么回事?严格按照google doc:
    Running an Android Application

    To run a compiled application, you will upload the .apk file to the /data/app/ directory in the emulator using the adb tool as described here:

    1. Start the emulator (run <your_sdk_dir>/tools/emulator from the command line)
    2. On the emulator, navigate to the home screen (it is best not to have that application running when you reinstall it on the emulator; press the Home key to navigate away from that application).
    3. Run adb install myproject/bin/<appname>.apk to upload the executable. So, for example, to install the Lunar Lander sample, navigate in the command line to <your_sdk_dir>/sample/LunarLander and type ../../tools/adb install bin/LunarLander.apk
    4. In the emulator, open the list of available applications, and scroll down to select and start your application.

    —T.T...

    进 adb shell里 看不到?? 如果能看到 rm了 然后从新 push吧 7 楼 yb31 2007-11-19 试了下
    adb shell 里已经有了.
    重新rm掉.再install,或push也不行
    8 楼 lordhong 2007-11-20 今天就adb shell。。。rm了一把,NND,程序都改了,emulator竟然不把新的app load进去,真是白痴。。。害我debug半个多小时。。, 9 楼 crazyox 2007-11-20 好东西, 不知道以后做这种手机软件的公司会不会多, 前景好不好啊! 10 楼 huanghero0663 2007-11-21 crazyox 写道好东西, 不知道以后做这种手机软件的公司会不会多, 前景好不好啊!关注中,希望又新的东西出来^_^ 11 楼 andy54321 2007-11-26 暂时还没研究这个地步,看来差距不小呢 12 楼 qiuzhiqing 2007-11-30 跑了个HelloWorld!呵呵
    差距啊~~~ 13 楼 lordhong 2007-12-01 慢慢来,我也是刚起步,东抄西抄的... 14 楼 fastzch 2007-12-10 各位有在android中如何开发Web Service的教程或例子吗?

  • 读书人网 >Android

    热点推荐