标签:
public class RightFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.right_fragment, container, false);
return view;
} }
inflate方法的三个参数:
动态添加碎片主要分为 5 步。
创建待添加的碎片实例。
获取到 FragmentManager,在活动中可以直接调用 getFragmentManager()方法得到。
开启一个事务,通过调用beginTransaction()方法开启。
向容器内加入碎片,一般使用 replace()方法实现,需要传入容器的 id 和待添加的碎片实例。
交事务,调用 commit()方法来完成。
public void onClick(View v) {
switch (v.getId()) {
case R.id.button:
AnotherRightFragment fragment = new AnotherRightFragment();
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction transaction = fragmentManager.
beginTransaction();
transaction.replace(R.id.right_layout, fragment);
transaction.commit();
break;
default:
break;
} }
管理Fragment
碎片的生命周期
1. 运行状态 当一个碎片是可见的,并且它所关联的活动正处于运行状态时,该碎片也处于运行状态。
2. 暂停状态 当一个活动进入暂停状态时(由于另一个未占满屏幕的活动被添加到了栈顶),与它相关联的可见碎片就会进入到暂停状态。
3. 停止状态
当一个活动进入停止状态时,与它相关联的碎片就会进入到停止状态。或者通过调 用 FragmentTransaction 的 remove()、replace()方法将碎片从活动中移除,但有在事务 交之前调用 addToBackStack()方法,这时的碎片也会进入到停止状态。总的来说,进入 停止状态的碎片对用户来说是完全不可见的,有可能会被系统回收。
4. 销毁状态
碎片总是依附于活动而存在的,因此当活动被销毁时,与它相关联的碎片就会进入 到销毁状态。或者通过调用 FragmentTransaction 的 remove()、replace()方法将碎片从活 动中移除,但在事务 交之前并没有调用 addToBackStack()方法,这时的碎片也会进入 到销毁状态。
onAttach()
当碎片和活动建立关联的时候调用。
onCreateView()
为碎片创建视图(加载布局)时调用。
onActivityCreated()
确保与碎片相关联的活动一定已经创建完毕的时候调用。
onDestroyView()
当与碎片关联的视图被移除的时候调用。
onDetach()
当碎片和活动解除关联的时候调用。
标签:
原文地址:http://www.cnblogs.com/zqlmmd/p/5470708.html