Google Map对象在某些设备上返回null

时间:2014-08-01 05:29:52

标签: java android google-maps google-maps-api-2

我使用以下代码初始化google地图对象:

if (googleMap == null) {
             googleMap = ( (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)).getMap();

      }

它工作正常,但在某些设备上,googleMap对象显示为null。我如何解决它?

我将单行代码打破为:

FragmentManager fmanager = getSupportFragmentManager();
            Fragment fragment = fmanager.findFragmentById(R.id.map);
            SupportMapFragment supportmapfragment = (SupportMapFragment)fragment;
googleMap=supportmapfragment.getMap();

最后一行supportmapfragment.getMap()是返回null的那一行。

我的xml文件:

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
       android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Store locator"
        android:layout_gravity="center_horizontal"
        android:textSize="40px" />

    <fragment
        android:id="@+id/map"
        android:name="com.google.android.gms.maps.SupportMapFragment"
           android:layout_width="match_parent"
        android:layout_height="200px"/>

    <ListView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/list_categories"
        />

</LinearLayout>

0 个答案:

没有答案