BaseFragment的一般抽取
来源:互联网 发布:php 自动化部署工具 编辑:程序博客网 时间:2024/05/29 19:59
抽取的思路
1,根据Fragment中几个常用的方法来抽取相应的方法 1,onCreate //1,可以将接收的参数或者getContext()获取,然后子类可以直接使用 //2,主要用来接收参数 init(); 2,onCreateView //用来展示绑定的视图,子类必须实现 initView(); 3,onViewCreate //当视图创建完成后,可以使用ButterKnife来绑定注解 ButterKnife.bind(this,view); 4,onActivityCreate //当Activity创建完成之后 //初始化数据 1,initData(); //初始化监听事件 2,initEvent();
抽取的代码实现
package com.example.guixin.oschina.base;import android.content.Context;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.v4.app.Fragment;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import butterknife.ButterKnife;/** * 类 名: ${CLASS_NAME} * 创 建 者: guixin * 创建时间: 2017/3/2 5:35 * 更新者 : $$Author$$ * 版 本: $$Rev$$ * 更新时间: $$Date$$ * 描 述: ${TODO} */public abstract class BaseFragment extends Fragment { protected String mArgs; protected Context mContext; @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); //1,对传递给Fragment的参数进行抽取 Bundle arguments = getArguments(); if (arguments != null) { mArgs = arguments.getString("args"); } //2,进行context的抽取 mContext = getContext(); //参数的获取 init(); } @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { //初始化要绑定的视图 return initView(); } @Override public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { //视图创建完成之后使用ButterKnife注解 ButterKnife.bind(this,view); super.onViewCreated(view, savedInstanceState); } @Override public void onActivityCreated(@Nullable Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); //当Activity创建完成之后 加载数据 处理事件 initData(); initEvent(); } /** * 完成初始化,如参数的接收 * 在BaseFragment中不知道init方法的具体实现 * 交给子类:选择性实现 */ protected void init() { } /** * 决定Fragment展示的视图 * 在BaseFragment中不知道initView方法的具体实现 * 交给子类:选择性实现 */ protected abstract View initView(); /** * 初始化数据 * 在BaseFragment中不知道initData方法的具体实现 * 交给子类:选择性实现 */ protected void initData() { } /** * 初始化监听器 * 在BaseFragment中不知道initEvent方法的具体实现 * 交给子类:选择性实现 */ protected void initEvent() { }}
0 0
- BaseFragment的一般抽取
- BaseFragment的抽取
- android 抽取BaseFragment
- Android学习笔记--BaseActivity和BaseFragment的再抽取
- MVC的思想,画图分析LoadingPager :Controller和BaseFragment的抽取
- 对BaseFragment的封装
- BaseFragment
- BaseFragment
- BaseActivity与BaseFragment的封装
- 4、Basefragment的封装使用
- 实现BaseFragment的创建分析
- BaseActivity与BaseFragment的封装
- BaseActivity和BaseFragment 的封装
- 如何用R语言抽取出服从一般分布的样本
- 从BaseActivity与BaseFragment的封装谈起
- 从BaseActivity与BaseFragment的封装谈起
- 从BaseActivity与BaseFragment的封装谈起
- 从BaseActivity与BaseFragment的封装谈
- 209. Minimum Size Subarray Sum
- Picking up an OOP(1) -JAVA-Inheritance
- 21分钟 MySQL 入门教程
- MySQL 数据类型
- FragmentTabHost+Fragment的使用
- BaseFragment的一般抽取
- 自动抢红包,自动安装原理之AccessibilityService
- 工厂设计模式
- Android微信自动回复功能
- 微信自动回复和自动抢红包实现原理(一):AccessibilityService的介绍和配置
- 微信自动回复和自动抢红包实现原理(二):自动回复
- 微信自动回复和自动抢红包实现原理(三):自动抢红包
- BZOJ1043 [HAOI2008]下落的圆盘
- BZOJ2658 [Zjoi2012]小蓝的好友(mrx)