package com.atguigu.mobileplayer1020.base; import android.content.Context; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; /** * 作者:尚硅谷-杨光福 on 2017/1/6 16:39 * 微信:yangguangfu520 * QQ号:541433511 * 作用:基类Fragment */ public abstract class BaseFragment extends Fragment { /** * 上下文 */ public Context mContext; /** * 当系统创建当前BaseFragment类的时候回调 * @param savedInstanceState */ @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); mContext = getActivity(); } /** * 当系统要创建Fragment的视图的时候回调这个方法 * @param inflater * @param container * @param savedInstanceState * @return */ @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { return initView(); } /** * 抽象方法,让孩子实现-强制子类实现 * * @return */ public abstract View initView() ; /** * 当Activty创建成功的时候回调该方法 * 初始化数据: * 联网请求数据 * 绑定数据 * @param savedInstanceState */ @Override public void onActivityCreated(@Nullable Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); initData(); } /** *当子类需要: * 1.联网请求网络,的时候重写该方法 * 2.绑定数据 */ public void initData() { } /** * * @param hidden false:当前类显示 * true:当前类隐藏 */ @Override public void onHiddenChanged(boolean hidden) { super.onHiddenChanged(hidden); Log.e("TAG","onHiddenChanged。。"+this.toString()+",hidden=="+hidden); if(!hidden){ onRefrshData(); } } /** * 当子类要刷新数据的时候重写该方法 */ public void onRefrshData() { } }