通过百度地图实现点击按钮获取定位城市并赋值给这个按钮
2016-11-07 18:44
477 查看
我们经常需要一个按钮,当我们点击之后能够获取定位信息,并且在按钮上显示出来。我们可以通过百度地图来实现这个功能。当然跟显示地图一样,需要导入百度地图的包,只是可以只选择定位的服务就好了。 首先,写一个按钮,类似如下:
<Button android:layout_width="110dp" android:layout_height="40dp" android:text="城市" android:textSize="18sp" android:id="@+id/citylocation" android:layout_marginLeft="20dp" android:layout_marginTop="30dp" />
一些定位相关的属性:
Button citySearch; public LocationClient mLocationClient = null; public MyLocationListenner myListener = new MyLocationListenner();
找控件,然后设置按钮的点击事件:
citylocation.setText("定位中..."); mLocationClient = new LocationClient( this ); mLocationClient.registerLocationListener(myListener); setLocationOption(); mLocationClient.start();
//设置相关参数 private void setLocationOption() { LocationClientOption option = new LocationClientOption(); option.setOpenGps(true); //打开gps option.setServiceName("com.baidu.location.service_v2.9"); option.setAddrType("all"); option.setPriority(LocationClientOption.NetWorkFirst); option.setPriority(LocationClientOption.GpsFirst); //gps option.disableCache(true); mLocationClient.setLocOption(option); }
获取定位的城市,并赋值给控件,如果没定位出来可以设置按钮显示“定位失败”:
public class MyLocationListenner implements BDLocationListener { @Override public void onReceiveLocation(BDLocation bdLocation) { if (bdLocation.getCity() != null) { citylocation.setText(bdLocation.getCity()); Log.i("location", bdLocation.getCity()); } else { citylocation.setText("定位失败"); } } }
别忘记了要关闭服务:
@Override public void onDestroy() { if(mLocationClient!=null){ mLocationClient.stop(); } super.onDestroy(); }
如果你还遇到没定位出来的问题,你有可能忘记在配置清单添加服务了。
<service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote"> <intent-filter> <action android:name="com.baidu.location.service_v2.9" /> </intent-filter> </service>
效果:
相关文章推荐
- 百度地图---通过ip定位获取当前城市
- 通过百度地图实现定位并获取本地当日天气信息
- Fragment中实现自动定位当前城市,点击刷新按钮更新天气信息
- Android实现EditText文本的输入,通过点击按钮,获取输入的内容
- 通过CSS切换图片效果,点击这个图片可以实现连接功能,这里的图片在一张大图片中,每个并要切换的图片没有切换,通过disposition定位的方式做
- Web项目实现通过经纬度获取城市信息---利用百度地图
- C#怎么通过一个按钮Button,实现点击这个按钮可以打开一个文件或者文件夹?
- qt通过点击按钮跳转当前图片坐标实现图片移动
- Android百度地图实现搜索和定位及自定义图标绘制并点击时弹出泡泡
- IOS中使用百度地图定位后获取城市坐标,城市名称,城市编号信息
- python基于selenium+PhantomJS实现用提交表单,并点击按钮功能,获取返回的页面源码和ur等信息l。
- 通过javascript实现点击一个按钮触发发音的动作
- 点击读秒获取验证码按钮实现
- 微信小程序----map组件实现(获取定位城市天气或者指定城市天气数据)
- [Selenium]通过Selenium实现在当前浏览器窗口点击一个图标之后,弹出另外一个窗口,关闭这个窗口,再回到原来的窗口进行操作
- 微信实现定位城市并获取城市编码
- android 通过百度地图定位获取坐标在导航地图上面显示,坐标发生偏移
- AngularJS 实现点击按钮获取验证码功能实例代码
- 动态的把数据显示在table中,点击某一行的删除按钮实现该行的删除(通过ajax实现页面的无刷新加载)
- Android百度地图定位后获取周边位置的实现代码