谷歌地图V2的Andr​​oid方法的GetMap()返回null [英] Google map v2 android method getMap() returns null

查看:134
本文介绍了谷歌地图V2的Andr​​oid方法的GetMap()返回null的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的应用程序,我使用谷歌地图编程,但是当我打电话的GetMap()返回null。 连我都试过onActivityCreated(),但仍返回null。 有人请帮助我.. 这是我的code,

 公共无效callMap(){
        尝试 {
            INT状态= GooglePlayServicesUtil
                    .isGooglePlayServicesAvailable(mActivity);
            如果(状态== ConnectionResult.SUCCESS){
                Log.d(sreedhu,谷歌Play业务可用);
                GMO =(新GoogleMapOptions())。zoomControlsEnabled(真)
                        .rotateGesturesEnabled(真正的);
                mapFragment = SupportMapFragment.newInstance(GMO);
                地图= mapFragment.getMap();
                经理= getFragmentManager();
                FragmentTransaction fragmentTransaction =经理
                .beginTransaction();
                fragmentTransaction.add(R.id.mapFragmentHole,mapFragment);
                fragmentTransaction.commit();
                manager.executePendingTransactions();
                            mapFragment =的GetMap();
            }否则,如果(GooglePlayServicesUtil.isUserRecoverableError(状态)){
                ErrorDialogFragment.newInstance(状态).show(
                        getFragmentManager(),errorDialog);
            } 其他 {
                Toast.makeText(mActivity,谷歌地图v2的不可用,
                        Toast.LENGTH_LONG).show();
                mActivity.popFragments();
            }

        }赶上(例外五){
            Log.d(sreedhu,玩+ e.toString());
        }



    }
 

解决方案

最后,我对这个问题的修复...

我有这个下篇片段上onCreateView这解决了我的问题,

  SupportMapFragment mFragment;
     mFragment =新SupportMapFragment(){
                @覆盖
                公共无效onActivityCreated(包savedInstanceState){
                    super.onActivityCreated(savedInstanceState);
                    如果((图= mFragment.getMap())!= NULL){
                        setUpMap();
                    }
                }
            };
 

在地图上是prepared的SuppotMapFragment的onActivityCreated将调用这里你可以设置你的地图。

In my application I am using google map programmatically, but when I call getMap() it returns null. even I have tried onActivityCreated() but still it returns null. somebody please help me.. Here is my code,

public void callMap() {
        try {
            int status = GooglePlayServicesUtil
                    .isGooglePlayServicesAvailable(mActivity);
            if (status == ConnectionResult.SUCCESS) {
                Log.d("sreedhu", "Google Play Service Available");
                gmo = (new GoogleMapOptions()).zoomControlsEnabled(true)
                        .rotateGesturesEnabled(true);
                mapFragment = SupportMapFragment.newInstance(gmo);
                map=mapFragment.getMap();   
                manager=getFragmentManager();
                FragmentTransaction fragmentTransaction = manager
                .beginTransaction();
                fragmentTransaction.add(R.id.mapFragmentHole, mapFragment);
                fragmentTransaction.commit();           
                manager.executePendingTransactions();
                            mapFragment=getMap();
            } else if (GooglePlayServicesUtil.isUserRecoverableError(status)) {
                ErrorDialogFragment.newInstance(status).show(
                        getFragmentManager(), "errorDialog");
            } else {
                Toast.makeText(mActivity, "Google Map v2 not available",
                        Toast.LENGTH_LONG).show();
                mActivity.popFragments();
            }

        } catch (Exception e) {
            Log.d("sreedhu", "play" + e.toString());
        }



    }

解决方案

Finally, I got the fix for this problem...

I include this below piece of snippet on onCreateView which solved my problem,

SupportMapFragment mFragment;
     mFragment = new SupportMapFragment() {
                @Override
                public void onActivityCreated(Bundle savedInstanceState) {
                    super.onActivityCreated(savedInstanceState);
                    if ((map = mFragment.getMap()) != null) {
                        setUpMap();
                    }
                }
            };

Once the map is prepared the SuppotMapFragment's onActivityCreated will get called there you can setup your map.

这篇关于谷歌地图V2的Andr​​oid方法的GetMap()返回null的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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