【问题标题】:getFragmentManager with API8使用 API8 的 getFragmentManager
【发布时间】:2013-06-11 10:58:13
【问题描述】:

我使用 API17 作为目标和 minSDK 12 构建我的应用程序 现在我必须让应用程序在 andorid.2.2 (API8) 设备上运行我将 minSDK 更改为 8 并将目标 SDK 更改为 8 我还修复了一些错误但我不知道如何解决这个问题

map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();

(错误:getFragmentManager() 未定义) 如何使用谷歌地图 v2
我将这些添加到活动中

import android.support.v4.app.* ;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentTransaction;
import android.support.v4.app.FragmentManager;

我还应该做些什么来解决这个问题??

【问题讨论】:

  • 你必须使用getSupportFragmentManager()也扩展FragmentActivity而不是Activity

标签: android fragment


【解决方案1】:

你的类必须扩展FragmentActivity。确保您已添加支持库。

SupportMapFragment fm = (SupportMapFragment)   getSupportFragmentManager().findFragmentById(R.id.map);
mMap = fm.getMap(); 

也在你的xml中

<fragment
class="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"/>

还要确保你已经导入

 import android.support.v4.app.FragmentActivity;  
 import com.google.android.gms.maps.SupportMapFragment;  

【讨论】:

    【解决方案2】:

    【讨论】:

      【解决方案3】:

      您需要getSupportFragmentManager(),如this document 中所述

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-30
        • 1970-01-01
        相关资源
        最近更新 更多