Android的 - 如何知道是否图形页面是否正确装入? [英] Android - How to know if mapView is properly loaded?

查看:162
本文介绍了Android的 - 如何知道是否图形页面是否正确装入?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有检测,如果图形页面在我的Andr​​oid地图加载器件的应用麻烦。在onCreate方法,当我指定地图URL,我想知道是否有任何问题发生。问题可能是由于我的互联网连接或任何其他问题,如装载从REST服务的地图出现。这里是我的code座;

I am having trouble in detecting if mapview is loaded in my android map appication. In OnCreate method, when I assign the map URL, I want to know if any problem occured. Problems may occur due to my internet connection or any other problems like loading the map from REST services. Here is my code block;

map.addLayer(newArcGISDynamicMapServiceLayer("any map URL"));

这一点后,我尝试使用的控制一样,如果(map.isLoaded ==假),但它不工作,虽然地图是正确加载它落入此块。

after this point, I try to use a control like if(map.isLoaded==false) but it does not work, although map is loaded properly it falls into this block.

谁能帮我?

在此先感谢

推荐答案

听起来像什么可能发生的是code是检查map.isLoaded()已被初始化之前。检查 MapView可以参考有关如何官方解释要正确检查初始化。

Sounds like what might be happening is the code is checking map.isLoaded() before it has been initialized. Check MapView Reference for the official explanation on how to properly check for initialization.

我在参考code扩展

    map = (MapView) findViewById(R.id.map);
    tileLayer = new ArcGISTiledMapServiceLayer("http://services.arcgisonline.com/ArcGIS/rest/services/World_Shaded_Relief/MapServer");

    tileLayer.setOnStatusChangedListener(new OnStatusChangedListener() {
        public void onStatusChanged(Object source, STATUS status) {
            if (OnStatusChangedListener.STATUS.INITIALIZED == status){
                map.addLayer(tileLayer);  //when layer is initialized add to map
            }
        }
    });


    map.setOnStatusChangedListener(new OnStatusChangedListener() {
       private static final long serialVersionUID = 1L;

       public void onStatusChanged(Object source, STATUS status) {
           //conditional checks if mapView's status has changed to initialized 
            if (OnStatusChangedListener.STATUS.INITIALIZED == status && source == map) 
            { 
                Toast mapViewToast = Toast.makeText(ActivityName.this, "MapView loaded", Toast.LENGTH_LONG);
                mapViewToast.show();
            }
        }
     });

这篇关于Android的 - 如何知道是否图形页面是否正确装入?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆