【问题标题】:show particular country as default in google map android在谷歌地图android中将特定国家显示为默认值
【发布时间】:2017-05-27 11:09:34
【问题描述】:

有什么方法可以将特定国家显示为谷歌地图中的默认国家?

我曾在一些国家的中心尝试过,但这似乎很乏味。 我只有国家名称说“印度”,我需要做的是,当应用程序打开时,重点显示“印度”。

【问题讨论】:

标签: android google-maps


【解决方案1】:

在你的 onMapReady() 函数集中

LatLngBounds boundsIndia = new LatLngBounds(new LatLng(23.63936, 68.14712), new LatLng(28.20453, 97.34466));
int padding = 0; // offset from edges of the map in pixels
CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngBounds(boundsIndia, padding);
 mMap.animateCamera(cameraUpdate);

当您打开地图时,您只会在地图上看到印度国家。 您可以为任何其他国家/地区执行此操作。

【讨论】:

  • 如果国家是动态的呢?
  • 您可以动态更改 LatLng 值。或者使用 HashMap 并将国家/地区名称设置为键,将 Latlan 设置为值。使用微调器选择国家/地区名称并将国家/地区名称与 hashmap 键匹配并设置值。
  • 谢谢,但是如果您检查问题,我在发布问题时只有国家/地区名称,并且当时没有 API 可用于从国家/地区名称获取国家/地区 latlng!我不确定它是否仍然可用!
【解决方案2】:

这显示了悉尼并在其上放置了一个标记https://developers.google.com/maps/documentation/android-api/map-with-marker

 public class MapsMarkerActivity extends AppCompatActivity
    implements OnMapReadyCallback {
    // Include the OnCreate() method here too, as described above.
    @Override
    public void onMapReady(GoogleMap googleMap) {
        // Add a marker in Sydney, Australia,
        // and move the map's camera to the same location.
        LatLng sydney = new LatLng(-33.852, 151.211);
        googleMap.addMarker(new MarkerOptions().position(sydney)
            .title("Marker in Sydney"));
        googleMap.moveCamera(CameraUpdateFactory.newLatLng(sydney));
    }
}

【讨论】:

  • 它将显示 sydney 并且 latlng 是静态的,我希望它是动态的。我想要的是国家中心的相机焦点而不是标记!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-01-03
  • 1970-01-01
  • 1970-01-01
  • 2013-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多