确定已加载Google地图图块

时间:2013-05-29 21:05:16

标签: android google-maps android-maps-v2

我在Android Activity中展示了Google Map,它扩展了FragmentActivity。地图从xml布局加载,如下所示:

<fragment
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/ad_layout"
class="com.google.android.gms.maps.SupportMapFragment" />

只有在地图图块完成下载后,用户才能在地图上执行某些功能。有没有办法确定地图图块是否已完成下载并且是否可见 - 除了显然是在​​查看地图?

2 个答案:

答案 0 :(得分:1)

设置onCameraChangeListener,这将在地图加载完毕后触发。做任何你想做的事情,然后删除监听器,使它只发生一次。

map.setOnCameraChangeListener(new OnCameraChangeListener(){

        @Override
        public void onCameraChange(CameraPosition arg0) {

            //TODO: move camera, do whatever you need to do etc...

            // remove listener so that position is not reset when user touches map
            map.setOnCameraChangeListener(null);
        }
    });

答案 1 :(得分:1)

将OnMapLoadedCallback侦听器添加到活动/片段

中的google地图对象
 googleMap.setOnMapLoadedCallback(new GoogleMap.OnMapLoadedCallback() {
            @Override
            public void onMapLoaded() {
                // perform certain functions();
            }
        });

更多参考资料:https://developers.google.com/android/reference/com/google/android/gms/maps/GoogleMap.OnMapLoadedCallback