这非常非常奇怪。我从来没有见过这样的东西。在我拍摄此屏幕截图时,我没有加载任何叠加层。首先,我认为这是我的互联网连接无法下载磁贴信息;但我们有很多用户报告从市场上下载的同一问题。这开始发生在一周前。不知道为什么。有人有线索吗?谢谢!
答案 0 :(得分:11)
确定。从一个干净的项目开始后,我发现这两行代码是罪魁祸首。
mapView.setSatellite(true);
mapView.setStreetView(true);
他们出现在彼此的背后,我回头看着开发的最初阶段,他们在那里,它工作得很好。显然,这是MapView中的一个BUG,因为我猜它试图同时显示SateliteView和StreetView。人们会认为后者会超越前者;但我猜不是。
所以,我的问题是,为什么这一切突然在上周左右浮出水面。我的猜测是地图应用程序最后一次在9月8日在市场上更新,也许在从市场更新后大约一天左右,这个问题开始重新出现。
作为测试,有人可以将这两行添加到他们的代码中并确认您获得相同的行为吗?
答案 1 :(得分:3)
我只有setStreetView(true)
并得到那些恼人的灰盒子。我玩两条线都没有运气。通过从我的代码中删除setStreeView和setSatellite来解决它,默认情况下转到streetview。
答案 2 :(得分:2)
我的应用程序使用谷歌地图库时遇到了同样的问题...因为我在我的设置选项中用户可以将地图视图更改为Satelite或Street,我根本不使用setStreetView(true)... .just mapView.setSatelite(true或false)...
preferences = PreferenceManager.getDefaultSharedPreferences(this);
pogled = preferences.getString("list", "Street");
if(pogled.equalsIgnoreCase("Street")){
mapView.setSatellite(false);
//mapView.setStreetView(true);
}else if (pogled.equalsIgnoreCase("Satelite")) {
mapView.setSatellite(true);
}
正如你所看到我有mapView.setStreetView(true)但这让我很头疼...:D我希望这会对你有所帮助......
答案 3 :(得分:2)
我从我的代码中删除了setStreetview(true),现在它的工作正常我看到这个问题在过去的两周内发生了,我们终于解决了这个问题很棒
答案 4 :(得分:1)
街景视图始终被视为默认选项。 当我们同时使用setStreetView(true)和setSatellite(true)时会出现问题。问题将像这样解决
if(mapView.isSatellite()){
mapView.setSatellite(false);
}else{
mapView.setStreetView(false);
mapView.setSatellite(true);
}
我希望这会有所帮助
答案 5 :(得分:1)
private void setUpMapTypeScreen() {
if (mapType.equalsIgnoreCase("Satellite")) {
mapView.setSatellite(true);
// mapView.setStreetView(false);
} else if (mapType.equalsIgnoreCase("StreetView")) {
mapView.setSatellite(false);
// mapView.setStreetView(true);
}
mapView.invalidate();
}
mapType是用户定义的字符串变量。切换到视图类型时,前面的视图类型不是false。我们所犯的错误,只设置了您需要的视图类型。
答案 6 :(得分:0)
我有同样的问题,我拿出了我的mapController,并修复了它。我唯一不同的另一件事就是将mapview放在带有textview的linearlayout中(以前它只是mapview),然后我使用了mapcontroller,将其评论出来。
由于这些是我改变的两件事,我很确定你的问题也存在。
答案 7 :(得分:0)
我遇到了同样的问题,我得到的一般建议是不要同时使用setStreeView(true)和setSatellite(true)。有些人甚至建议不要完全使用setStreetView(true)。但我的代码以前工作正常。我不得不重新安装我的机器,因此重新安装了android SDK和其他组件,之后开始发生这种情况。所以我的猜测是这是一个特定版本的问题但是我发现这个问题出现2.2的特定版本 - 在我的案例中Android SDK平台2.2,修订版3.我试过在2.3上运行相同的代码并且它正常工作即没有灰盒子。
答案 8 :(得分:0)
除了删除mapController.setStreetView(true)之外,还有另一件事应该添加到布局XML中。
xmlns:android="http://schemas.android.com/apk/res/android"
<com.google.android.maps.MapView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mapa"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:apiKey="YOUR API KEY"
android:clickable="true"></com.google.android.maps.MapView>
请注意com.google.android.maps.MapView之后的xml命名空间。添加命名空间后,交叉切片消失了。不知道它是否是一个错误或命名空间是必要的,以便api正确渲染地图。无论哪种方式,它都有效。