返回顶部

一缕半夏微光

温柔半两,从容一生

导航

体温登记app——进度9

今天将界面截图等发给老师验收,老师说定位应该定位到具体的地方,而不是经纬度

所以后面就继续进行查资料进行修改,代码如下:

在MainActivity.java文件中加上此方法,其中lnt为经度,lat为纬度

 1 public String getAddress(double lnt, double lat) {
 2   
 3           Geocoder geocoder = new Geocoder(MainActivity.this);
 4           boolean falg = geocoder.isPresent();
 5           StringBuilder stringBuilder = new StringBuilder();
 6           try {
 7               //根据经纬度获取地理位置信息---这里会获取最近的几组地址信息,具体几组由最后一个参数决定
 8               List<Address> addresses = geocoder.getFromLocation(lat, lnt, 1);
 9              if (addresses.size() > 0) {
10                  Address address = addresses.get(0);
11                  for (int i = 0; i < address.getMaxAddressLineIndex(); i++) {
12                      if (i == 0) {
13                          stringBuilder.append(address.getAddressLine(i)).append("");
14                      }
15                      if (i == 1) {
16                          stringBuilder.append(address.getAddressLine(i));
17                          break;
18                      }
19                 }
20                  stringBuilder.append(address.getFeatureName()).append("");//周边地址
21                  mLocal.setText("地理位置:"+stringBuilder);
22              }
23          } catch (Exception e) {
24              e.printStackTrace();
25          }
26          return stringBuilder.toString();
27      }

然后再调用此方法即可

效果图如下:

posted on 2021-02-09 17:57  一缕半夏微光  阅读(105)  评论(0编辑  收藏  举报