当我尝试通过在 Activity 中声明 FragmentTransaction ft = getFragmentManager().beginTransaction() 来替换 Fragment 时,我总是会收到以下错误警报:
import android.support.v4.app.FragmentTransaction;
public class MainFrameActivity extends ActivitySupport {
FragmentTransaction ft = getFragmentManager().beginTransaction();
switch (position) {
case 0:
ft.replace(R.id.content_frame, fragmentDiscover);
break;
case 1:
ft.replace(R.id.content_frame, fragmentPersonInfo);
break;
}
ft.commit();
mDrawerList.setItemChecked(position, true);
mDrawerLayout.closeDrawer(mDrawerList);
}
并且该类是 ActivitySupport 继承自:
public class ActivitySupport extends Activity implements IActivitySupport {
我已经尝试将 getFragmentManager 更改为 getSupportFragmentManager(),并且发出警告该方法不是未定义的情况变得更糟。
那么我该怎么做才能使 getFragmentManager() 成为 v4 支持的方法?
最佳答案
改变它
public class ActivitySupport extends Activity implements IActivitySupport {
给
public class ActivitySupport extends FragmentActivity implements IActivitySupport {
然后就可以了
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
关于android - Android 中 FragmentTransaction 的类型不匹配与 getFragmentManager().beginTransaction(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19881810/