我想将谷歌地图视图从一个州更改为另一个州。目前该视图是卫星视图,现在我想将其更改为街景。我写的如下,但它没有改变观点。如何在运行时更改视图?
mapView.setStreetView(true);
答案 0 :(得分:2)
之后放上这一行,让我知道发生了什么,
mapView.invalidate();
在您的代码中,您必须执行类似的操作,
mapView.setStreetView(true);
mapView.setSatellite(false);
mapView.invalidate();
答案 1 :(得分:0)
从模拟器中卸载项目并再次运行它。希望它能够正常运行。
答案 2 :(得分:0)
正如MapView reference所示,setStreetView
不会将地图更改为街景 - 它只会切换显示蓝色条纹,指示街景是否可用,您当前正在查看的地图位置。我猜想开始街景的最简单方法是通过StartActivity
启动谷歌自己的街景应用。
答案 3 :(得分:0)
mapView.setStreetView(true);
折旧。
try {
Intent streetView = new Intent(android.content.Intent.ACTION_VIEW,Uri.parse("google.streetview:cbll="+my_lat+","+my_lng+"&cbp=1,99.56,,1,-5.27&mz=21"));
streetView.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(streetView);
} catch ( Exception ex ) {
Toast.makeText(getBaseContext(), "Could not launch Goole Street View. Are you sure it's installed? Launching market...", Toast.LENGTH_LONG).show();
Intent intent = new Intent(Intent.ACTION_VIEW,
Uri.parse("market://details?id=com.google.android.street"));
startActivity(intent);
}
如果没有使用try / catch,如果未安装街景,您的应用程序将崩溃。
答案 4 :(得分:-1)
mapView.setStreetView(true);
mapView.setSatellite(false);
mapView.invalidate();