您的位置:首页 > 移动开发 > Android开发

Android 碎片Fragment之(生命周期事件处理过程)

2015-05-21 13:44 399 查看
最近太闲了吧,开年到现在差不多就改了一些 BUG和写一个支付 SDK.闲了,除了学习就是无聊写博客.但是妈蛋自己太鸡巴水了.写不出逼格很高的东西.就瞎鸡巴蛋写写吧.下面为大家全面分析 Fragment 详细过程.

public class TestFragment extends Fragment {
//调用该方法时Fragment 会被连接到他的父类Activity 上
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
}

//调用该方法时Fragment 会创建
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//初始化Fragment

}

//Fragment被创建,那么久该创建Fragment的 view
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
//创建成功返回View or 创建失败返回 null
return inflater.inflate(R.layout.layout_activity_main, false);
}

//父Activity 和Fragmen 的ui 已经被创建,则调用改方法
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
//完成Fragmen 的初始化,父类Activity和Fragmen 初始化完成才被完全填充才做的事.
//举个列子:这里请求服务器数据动态填充view
super.onActivityCreated(savedInstanceState);
}

//在可见生命周期的开始时被调用
@Override
public void onStart() {
//应用所有需要ui 的变化,现在 fragment 是可见的.
super.onStart();
}

//在生命周期开始时被调用
@Override
public void onResume() {
//恢复所有暂停需要更新的UI, 一般情况这里处理请求数据.,但是在非活动的时候他时暂停状态.
super.onResume();
}

//在生命周期结束的时候才会被调用.
@Override
public void onPause() {
//当Activity 不是活动的前提时,需要暂停UI 的更新,挂起县城或者暂停那些不需要更新的CPU 集中处理.调用这个防火,进程可能被终止,所以要保存所有的编辑和状态改变信息.
super.onPause();
}

//在生命周期结束时,调用该方法保存UI 的状态变化
@Override
public void onSaveInstanceState(Bundle outState) {
//将Ui 的状态改变信息保存到 onSaveInstanceState
//这个 bundle 会传递到 oncreate丶 oncreateview 和 onactivityCreate(如果父类 activity 被终止并且重启)方法中
super.onSaveInstanceState(outState);
}

//在可见生命周期结束时调用该方法
@Override
public void onStop() {
//当 fragment 不可见时,暂停其余的 ui 更新.挂起线程或者暂停不需要的处理
super.onStop();
}
//当 fragment 的 view 被分离时,调用该方法

@Override
public void onDestroyView() {
//清除资源相关的view
super.onDestroy();
}

//整个生命周期结束时调用的方法
@Override
public void onDestroy() {
//清除所有的资源,包括结束线程和关闭数据库连接.
super.onDestroy();
}
//当 fragment 从他的父类 activity 上分离时,调用该方法

@Override
public void onDetach() {
super.onDetach();
}
}


好了,到此结束了.如果有不明白的,请留言.看到留言会解答.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: