关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已采纳
百度地图APi 定位后UI无法刷新 这是怎么回事
收起
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
追加酬金 (90%的用户在追加酬金后获得了解决方案)
当前问题酬金
¥ 0 (可追加 ¥500)
支付方式
扫码支付
加载中...
3条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
qq_33542207 2017-07-15 15:44关注用Handler应该可以
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
小曦曦大神 2017-07-15 02:17关注上面的图已经定位成功,HelloWorld却没刷新
下面的图是 要手机按一下home键再进来UI才会刷新
这是怎么回事package com.example.lbstest2;
import android.Manifest; import android.content.pm.PackageManager; import android.support.annotation.NonNull; import android.support.v4.app.ActivityCompat; import android.support.v4.content.ContextCompat; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.TextView; import android.widget.Toast; import com.baidu.location.BDLocation; import com.baidu.location.BDLocationListener; import com.baidu.location.LocationClient; import com.baidu.location.LocationClientOption; import com.baidu.mapapi.SDKInitializer; import java.util.ArrayList; import java.util.List; public class MainActivity extends AppCompatActivity { public LocationClient mLocationClient; private TextView positionText; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mLocationClient = new LocationClient(getApplicationContext()); setContentView(R.layout.activity_main); mLocationClient.registerLocationListener(new MyLocationListener()); positionText = (TextView) findViewById(R.id.position_text_view); List<String> permissionList = new ArrayList<>(); if(ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) { permissionList.add(Manifest.permission.ACCESS_FINE_LOCATION); } if(ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.READ_PHONE_STATE) != PackageManager.PERMISSION_GRANTED) { permissionList.add(Manifest.permission.READ_PHONE_STATE); } if(ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { permissionList.add(Manifest.permission.WRITE_EXTERNAL_STORAGE); } if(!permissionList.isEmpty()) { String[] permissions = permissionList.toArray(new String [permissionList.size()]); ActivityCompat.requestPermissions(MainActivity.this,permissions,1); }else { requestLocation(); } } private void requestLocation() { initLocation(); mLocationClient.start(); } private void initLocation() { LocationClientOption option = new LocationClientOption(); option.setScanSpan(5000); option.setLocationMode(LocationClientOption.LocationMode.Battery_Saving); mLocationClient.setLocOption(option); } @Override protected void onDestroy() { super.onDestroy(); mLocationClient.stop(); } @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { switch (requestCode) { case 1: if(grantResults.length > 0) { for(int result : grantResults) { if(result != PackageManager.PERMISSION_GRANTED) { Toast.makeText(this,"没有权限将无法使用本程序", Toast.LENGTH_SHORT).show(); } finish(); return; } requestLocation(); }else { Toast.makeText(this,"发生未知错误,请尝试重新安装本程序",Toast.LENGTH_SHORT).show(); finish(); } default: break; } } public class MyLocationListener implements BDLocationListener { @Override public void onReceiveLocation(BDLocation bdLocation) { StringBuilder currentPosition = new StringBuilder(); try { currentPosition.append("纬度:").append(bdLocation.getLatitude()).append("\n"); currentPosition.append("经度:").append(bdLocation.getLongitude()).append("\n"); currentPosition.append("定位方式:"); if (bdLocation.getLocType() == BDLocation.TypeGpsLocation) { currentPosition.append("GPS"); } else if (bdLocation.getLocType() == BDLocation.TypeNetWorkLocation) { currentPosition.append("网络"); } else { currentPosition.append("未知错误"); } positionText.setText(currentPosition); Toast.makeText(MainActivity.this,"定位成功\n"+currentPosition,Toast.LENGTH_SHORT).show(); }catch (Exception e) { e.printStackTrace(); } } @Override public void onConnectHotSpotMessage(String s, int i) { } } }
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
小曦曦大神 2017-07-15 02:19关注public class MyLocationListener implements BDLocationListener { @Override public void onReceiveLocation(BDLocation bdLocation) { StringBuilder currentPosition = new StringBuilder(); try { currentPosition.append("纬度:").append(bdLocation.getLatitude()).append("\n"); currentPosition.append("经度:").append(bdLocation.getLongitude()).append("\n"); currentPosition.append("定位方式:"); if (bdLocation.getLocType() == BDLocation.TypeGpsLocation) { currentPosition.append("GPS"); } else if (bdLocation.getLocType() == BDLocation.TypeNetWorkLocation) { currentPosition.append("网络"); } else { currentPosition.append("未知错误"); } positionText.setText(currentPosition); Toast.makeText(MainActivity.this,"定位成功\n"+currentPosition,Toast.LENGTH_SHORT).show(); }catch (Exception e) { e.printStackTrace(); } }
这里是显示定位的 Toast 上面的 positionText.setText(currentPosition);更新UI没用 要手机按一下home键再进来UI才会刷新
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容
报告相同问题?
提交
- 2017-07-15 02:15回答 3 已采纳 用Handler应该可以
- 2017-11-23 03:29回答 5 已采纳 应该是不能更改的 
- 2021-04-14 14:52回答 1 已采纳 你页面resize时 百度地图这个对象也要重新reload https://dafrok.github.io/vue-baidu-map/#/zh/start/base
- 2020-01-30 10:00JSP课程设计毕业设计远吗的博客 百度地图api实现定位功能 java代码 package com.demo.an.android.location; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener...
- 2022-11-07 00:00回答 1 已采纳 可将Canvas渲染模式修改一下试试:
- 2017-12-27 01:21回答 4 已采纳 第一个activity里有在oncreate()或者onNewIntent()对传进来的intent做处理吗,或者你是用startactivityforresult 的话要实现onActivityRe
- 2021-11-18 11:00回答 1 已采纳 self.ui并不是一个widget类啊,用self就行了
- 2018-05-17 15:28villen_t的博客 在百度开放平台,注册 ak 注册 ak 时,需要用到 app 的 SHA1 和 包名,而获取 SHA1,需要用到 release 版 的签名文件 故需要先生成签名文件 然后在签名文件所在文件夹中打开 CMD 命令,输入 keytool -list...
- 2022-06-12 09:55回答 1 已采纳 日期格式化:{{value}} <el-date-picker v-model="value" type="date" placeholder="选择日期" value-format="yyy
- 2022-10-18 15:06回答 1 已采纳 用glide加载图片
- 2022-04-27 08:59回答 1 已采纳 在顶部菜单中找到ToggleToolHandlePosition,你现在应该是Center模式,点击修改为Pivot就可以了。
- 2018-07-01 23:20风神.NET的博客 index.html &lt;!doctype html&gt; &lt;html&...地图标点&lt;/title&gt; &lt;meta http-equiv="content-type" content=&
- 2021-09-05 21:47回答 2 已采纳 少了 if __name__=="__main__": 还有,最后一行的第一个单词写错了,是sys,不是sye
- 2016-03-17 22:21熊喵先生的博客 今天具体要实现的功能就是输入该地点的名称然后就展示该地点的内景图片,有内景就展示内景,没有则显示该地点的街景,该功能是参考百度地图官方的API来实现。 实现街景展示的地点的搜索,需要涉及到几个方面的知识...
- 2022-01-24 22:19假的程序猿LC的博客 通常为了让这个软件更加便于使用(看起来更加高B格),通常会嵌入一个地理地图在其中。在监控软件中嵌入地图有下述好处: 可视化机器人的运动轨迹; 在地图上选取位置(航点)用于设置机器人的任务。 那么,如何...
- 没有解决我的问题, 去提问
悬赏问题
- ¥15 k210显示failed init to model
- ¥15 Evil-droid生成的APK手机已经下载但无法建立任务
- ¥25 c语言韩信点兵的变式
- ¥15 怎么根据书上的例子完成这个问题呢?
- ¥15 ECharts 增加Zoom,整行包括右边的Text一起滑动
- ¥15 关于网上一个easyx制作的见缝插针小游戏(c++)
- ¥15 开地址法双散列函数处理碰撞
- ¥15 想问一下这个是什么情况 虚拟机Linux打不开了
- ¥15 联通光猫掉注册了怎么重新注册上去
- ¥15 关于unity开发steamvr程序遇到的问题