【问题标题】:On very first time onMapLoaded() is not called in google maps android , onMapLoaded not working in google maps android在第一次 onMapLoaded() 没有在 google maps android 中调用,onMapLoaded 在 google maps android 中不起作用
【发布时间】:2017-02-09 06:55:25
【问题描述】:

第一次没有调用onMapLoaded()。我的地图第一次没有显示。但是onMapReady(GoogleMap googleMap) 打来电话。但在第二次成功加载地图。 onMapReady(GoogleMap googleMap)onMapLoaded() 都调用了。我无法预测这个问题。请让我有任何想法来解决我的问题。

地图初始化

SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
                    .findFragmentById(R.id.map);
            mapFragment.getMapAsync(this);

对于onMapReady:

@Override
    public void onMapReady(GoogleMap googleMap) {
        mMap = googleMap;
        mMap.setOnMarkerClickListener(MapsActivity.this);            
        mMap.setMyLocationEnabled(true);
        setCustomInfoWindow();

    }

对于 onMapLoaded:

@Override
    public void onMapLoaded() {
        if (mMap != null) {
            //mMap.snapshot(this);
            addMarkers();
        }
    }

【问题讨论】:

    标签: android google-maps navigation


    【解决方案1】:

    将此mMap.setOnMapLoadedCallback(this); 添加到onMapReady()

        @Override
        public void onMapReady(GoogleMap googleMap) {
            mMap = googleMap;
            mMap.setOnMapLoadedCallback(this);
            mMap.setOnMarkerClickListener(MapsActivity.this);            
            mMap.setMyLocationEnabled(true);
            setCustomInfoWindow();
    
        }
    

    试试看。

    【讨论】:

    • 我也添加了。但是现在仍然没有加载第一次。
    【解决方案2】:

    请不要混淆onMapReady(GoogleMap googleMap)onMapLoaded()。这是一个文档,你可以refer

    【讨论】:

    • 好的.. 但是地图不是第一次加载。仅在左下角显示谷歌图标。但是地图没有加载。那么问题是什么??
    • 我的 debug.apk 也有类似的问题,但我的 release.apk 工作正常
    猜你喜欢
    • 1970-01-01
    • 2017-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多