fragment使用可以导入两个包,android.support.v4,app.Fragment和android.app.Fragment。
3.0以上版本的我们可以使用app的包,3.0以下的可以使用support.v4包。
所以我们分两种情况来使用fragment。
第一种情况使用app包:
public class Fragment1 extends Fragment { //此方法创建显示的视图 @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.frag1, null); return view; } } //获得fragment管理者FragmentManager fragmentManager=getFragmentManager();//开启事务FragmentTransaction ft=fragmentManager.beginTransaction();ft.replace(R.id.fl, fragment1).commit();//提交事务 以上引入的都是app包。第二种情况:
创建fragment与第一种情况类似,只是引入support.v4的包
不同的是创建的activity需要继承FragmentActivity,然后还有以下几个不同。
FragmentManager fm = getSupportFragmentManager();//获得fragment 管理者 FragmentTransaction ft = fm.beginTransaction();//开启事务 ft.replace(R.id.fl, fragment1).commit();//提交事务 然后你可以将framelayout布局替换成fragment,并提交事务。 如果你需要往activity传入参数,你需要在fragment中调用getActivity()方法来得到activity,然后通过其方法往activity传入参数。