百度地图SDK for Android【Demo点击屏幕获取地理坐标】
来源:互联网 发布:软件开发团队建设 编辑:程序博客网 时间:2024/04/19 11:58
http://blog.csdn.net/baidulbs/article/details/8646847
通过手指点击屏幕从而获取所点击点的地理坐标是一个在实际应用中较为常见的功能。下面,我将为大家介绍如何实现此功能。
基本原理:通过点击获取屏幕坐标,利用坐标转换的接口,把屏幕坐标转换为地理坐标。
有了以上的基本原理,我们就可以去具体实现了,步骤如下:
第一步,集成MapView,重写onTouchEvent方法。代码如下:
- public class MyMapView extends MapView {
- public MyMapView(Context context)
- {
- super(context);
- }
- public MyMapView(Context context, AttributeSet set)
- {
- super(context, set);
- }
- public MyMapView(Context context, AttributeSet set, int i)
- {
- super(context, set, i);
- }
- @Override
- public boolean onTouchEvent(MotionEvent arg0) {
- // TODO Auto-generated method stub
- int x = (int)arg0.getX();
- int y = (int)arg0.getY();
- GeoPoint geoPoint = this.getProjection().fromPixels(x, y);
- int xx = geoPoint.getLongitudeE6();
- int yy = geoPoint.getLatitudeE6();
- Log.d("xxxxxxxxxxx", Integer.toString(xx));
- Log.d("yyyyyyyyyyy", Integer.toString(yy));
- return super.onTouchEvent(arg0);
- }
- }
第二步,在布局文件中添加上一步自己定义的MapView。代码如下:
- <com.baidumap.basemap.MyMapView
- android:id="@+id/bmapsView"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:layout_below="@+id/button1"
- android:clickable="true" />
第三步,在主类中定义并初始化MyMapView对象,运行程序,点击屏幕就可以获取点击点的地理坐标了。
注意事项:
1 在自定义并继承MapView的时候需要注意几个几个构造方法,特别是public MyMapView(Context context, AttributeSet set),一定要有,不然会报错。
2 布局文件添加的MapView不再是我们百度为大家提供的MapView,应该添加自定义的那个MyMapView(否则有什么意义呢?)。
3 在使用setContentView方法之前一定要先初始化BMapManager,否则会报错,这个在官方开发指南及本博客的相关章节都有强调,可是还有很多不细心的开发者犯这个小错误。
最后希望通过我们大家共同的努力使百度地图SDK越来越好!
更多详细信息请登录百度地图API官方网站:http://developer.baidu.com/map/
百度地图API论坛:http://bbs.lbsyun.baidu.com/
- 百度地图SDK for Android【Demo点击屏幕获取地理坐标】
- 百度地图SDK for Android【Demo点击屏幕获取地理坐标】
- 百度地图坐标获取demo
- 百度地图SDK for Android【Demo地图展示】
- 百度地图SDK for Android【Demo地图图层】
- 百度地图SDK for Android【Demo地图图层】
- 百度地图SDK for Android【Demo兴趣点搜索】
- 百度地图SDK for Android【Demo路径规划】
- 百度地图SDK for Android【Demo自定义图层】
- 百度地图SDK for Android【Demo Place详情页】
- Android SDK for 百度地图【Demo兴趣搜索】
- 百度地图SDK for Android【Demo兴趣点搜索】
- 百度地图SDK for Android【Demo Place详情页】
- 百度地图SDK for Android【Demo兴趣点搜索】
- 百度地图SDK for Android【Demo调起百度地图客户端导航功能】
- 百度地图SDK for Android【Demo调起百度地图客户端导航功能】
- 百度地图SDK for Android【Demo调起百度地图客户端导航功能】
- 百度地图SDK for Android
- 经典线程同步总结 关键段 事件 互斥量 信号量
- 百度地图SDK for Android【覆盖物】
- Android ProgressBar自定义图片进度,自定义渐变色进度条
- C程序设计语言 Exercise 2-9
- 归并排序
- 百度地图SDK for Android【Demo点击屏幕获取地理坐标】
- 安装ttf-mscorefonts-installer的方法
- 百度地图SDK for Android【路径规划】
- Android网络编程之Http通信
- 设备交互验证
- 谈谈软件开发中的坚持
- 百度地图SDK for Android【Demo地图图层】
- Hibernate延迟加载
- 百度地图SDK for Android【Demo兴趣点搜索】