gpt4 book ai didi

android - getProjection().getVisibleRegion().latLngBounds; onMapReady 后返回 0

转载 作者:太空狗 更新时间:2023-10-29 14:07:48 33 4
gpt4 key购买 nike

在我的 Google map 初始化后,我试图从设备屏幕上的可见区域获取 LatLngBounds。但是我只收到 0 值。我的猜测是即使在调用 OnMapReady 之后, map 实际上还没有加载。我四处寻找检查 map 初始化的更好方法,但一无所获。我如何确保收到正确的数据?

初始化 map

public void initMap(){
MapFragment map = (MapFragment) getFragmentManager().findFragmentById(R.id.mapFragment);
map.getMapAsync(this);
}

map 就绪回调

@Override
public void onMapReady(GoogleMap googleMap) {

try {
if (googleMap != null) {
mGoogleMap = googleMap;
mGoogleMap.setOnMarkerClickListener(this);
mGoogleMap.setOnCameraChangeListener(this);
mGoogleMap.setOnMapClickListener(this);
mGoogleMap.setMapType(GoogleMap.MAP_TYPE_NORMAL);
search();
}

} catch (Exception exception) {
mUtility.getThemedAlert(this,
getResources().getString(R.string.error_google_maps),
getResources().getString(R.string.unable_build_google_maps)).show();
}
}

获取边界

public void search() {
LatLngBounds bounds = mGoogleMap.getProjection().getVisibleRegion().latLngBounds;
Log.e("TEST", bounds.toString());
}

日志输出

E/TEST﹕ LatLngBounds{southwest=lat/lng: (0.0,0.0), northeast=lat/lng: (0.0,0.0)}

最佳答案

OnMapLoaded 函数有帮助。谢谢。

这是我的代码,

map.setOnMapLoadedCallback(new GoogleMap.OnMapLoadedCallback() {
@Override
public void onMapLoaded() {

invokeApi();
}
});

关于android - getProjection().getVisibleRegion().latLngBounds; onMapReady 后返回 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31548243/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com