首页 > 代码库 > 关于Fragment API版本号兼容问题

关于Fragment API版本号兼容问题

  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;


假设导入了本地的包,会报错。

关于Fragment API版本号兼容问题