0

当您在浏览器中访问 Google 地图时,您可以输入一个国家名称,然后地图就会以该国家/地区为中心。是否有可能在 MapView 上得到这个?如果位置不可用,我希望我的 MapView 最初专注于用户所在的国家/地区。

编辑:这是我到目前为止所拥有的:

private MapView mvClear;
private MyLocationOverlay compass;
private MapController controller;

@Override
protected void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.activity_clear_map);

   mvClear = (MapView) findViewById(R.id.mvClear);
   mvClear.setBuiltInZoomControls(true);

   TouchOverlay touchOverlay = new TouchOverlay();
   List<Overlay> overlays = mvClear.getOverlays();
   overlays.add(touchOverlay);

   compass = new MyLocationOverlay(this, mvClear);
   overlays.add(compass);

   controller = mvClear.getController();
   controller.setZoom(8);

   Geocoder coder = new Geocoder(this);
   try {
       List<Address> address = coder.getFromLocationName(Locale.getDefault().getCountry(), 1);
       int lat = (int) address.get(0).getLatitude();
       int lon = (int) address.get(0).getLongitude();
       GeoPoint point = new GeoPoint(lat, lon);
       controller.setCenter(point);
   } catch (IOException e) {
       e.printStackTrace();
   }
}

没有重点。

4

1 回答 1

0

我发现的最佳解决方案是将默认中心点保存为字符串资源,以便在应用程序本地化时可以“翻译”它。暂时就是这样。。

于 2013-02-05T17:52:56.767 回答