Fragment 是在API 11(android 3.0)被引入的,然而我的应用 的 android:miniSdkVersion 是
API 8,也就是说该应用是兼容旧版本的,为了能够兼容旧版本,需要引入Fragment相关的支持包
import android.support.v4.app.Fragment;
而不是本地包
import android.app.Fragment;
虽然Android支持包和本地包都含有Fragment的相关类,但这些分布在两个包中的类是不可以互用的。
FragmentManager fm =getSupportFragmentManager(); Fragment fragment = fm.findFragmentById(R.id.fragmentContainer); if (fragment==null){ fragment = new CrimeFragment(); fm.beginTransaction() .add(R.id.fragmentContainer,fragment) .commit();
在这段代码中,我们导入的包是这些:
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
而不是这些:
import androidapp.Fragment;
import androidapp.FragmentActivity;
import android.app.FragmentManager;
如果导入了本地的包,会报错。
时间: 2024-11-10 17:53:15