一、Fragment的使用:(API至少为11)
1.在activity_main.xml布局文件中规划出Fragment的位置
2.新建fragment.xml布局文件,此文件用来填充Fragment
3.新建fragment类继承Fragment,
(1)、import android.app.Fragment;(minSdkVersion="11")
(2)、import android.support.v4.app.Fragment;(兼容低版本)
以上2种,二选一
4.重写onCreateView方法
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
View view = inflater.inflater(R.layout.fragment, null);
//获取fragment中的控件
tView = (TextView) view.findViewById();
.....
return view;
}
5.MainActivity中动态添加Fragment
FragmentManager fragmentManager = getFragmentManager();//获取fradment管理器
FragmentTransaction transaction = fragmentManager.beginTransaction();//开启一个事务
transaction.replace(R.id.ll1, new Fragment1());//替换成fragment
transaction.replace(R.id.ll2, new Fragment2());
transaction.commit();//☆☆☆☆☆提交事务
二、Fragment之间的通信(桥梁:他们共同依附的Activity)
1.在MainActivity中动态添加时,使用transaction.replace(containerViewId, fragment, tag)方法
transaction.replace(R.id.ll1, new Fragment1(),"f1");
transaction.replace(R.id.ll2, new Fragment2(),"f2");
2.给fragment添加标记后,在Fragment1中获取Fragment2对象
//getActivity()得到Fragment所依附的Activity
//根据tag获取对应的fragment对象
Fragment2 f2 = (Fragment2) getActivity().getFragmentManager().findFragmentByTag("f2");
//在Fragment2设置setText方法,修改Fragment2控件内容
f2.setText("wdwdsadqw wqewq");
三、在fragment中弹吐司
Toast.makeText(getActivity(), "12312312", 0).show();
1.在activity_main.xml布局文件中规划出Fragment的位置
2.新建fragment.xml布局文件,此文件用来填充Fragment
3.新建fragment类继承Fragment,
(1)、import android.app.Fragment;(minSdkVersion="11")
(2)、import android.support.v4.app.Fragment;(兼容低版本)
以上2种,二选一
4.重写onCreateView方法
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
View view = inflater.inflater(R.layout.fragment, null);
//获取fragment中的控件
tView = (TextView) view.findViewById();
.....
return view;
}
5.MainActivity中动态添加Fragment
FragmentManager fragmentManager = getFragmentManager();//获取fradment管理器
FragmentTransaction transaction = fragmentManager.beginTransaction();//开启一个事务
transaction.replace(R.id.ll1, new Fragment1());//替换成fragment
transaction.replace(R.id.ll2, new Fragment2());
transaction.commit();//☆☆☆☆☆提交事务
二、Fragment之间的通信(桥梁:他们共同依附的Activity)
1.在MainActivity中动态添加时,使用transaction.replace(containerViewId, fragment, tag)方法
transaction.replace(R.id.ll1, new Fragment1(),"f1");
transaction.replace(R.id.ll2, new Fragment2(),"f2");
2.给fragment添加标记后,在Fragment1中获取Fragment2对象
//getActivity()得到Fragment所依附的Activity
//根据tag获取对应的fragment对象
Fragment2 f2 = (Fragment2) getActivity().getFragmentManager().findFragmentByTag("f2");
//在Fragment2设置setText方法,修改Fragment2控件内容
f2.setText("wdwdsadqw wqewq");
三、在fragment中弹吐司
Toast.makeText(getActivity(), "12312312", 0).show();