对Activity的抽基BaseActivity
public abstract class BaseActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//绑定布局
setContentView(bindLayout());
//初始化控件
initView();
//初始化数据
initData();
//绑定事件
bindEvent();
}
protected abstract int bindLayout();
protected abstract void initView();
protected abstract void initData();
protected abstract void bindEvent();
public <T extends View> T getId(int resId){
return (T)findViewById(resId);
}
}
对Fragment的抽基BaseFragment
public abstract class BaseFragment extends Fragment {
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view=inflater.inflate(bindLayout(),container,false);
return view;
}
protected abstract int bindLayout();
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
initView();
initData();
bindEvent();
}
protected abstract void initView();
protected abstract void initData();
protected abstract void bindEvent();
protected <T extends View> T getId(int resId){
return (T)getView().findViewById(resId);
}
}