在我看到的很多例子中,所有的 Activity 和 fragment 都是从基础 Activity 和基础 fragment 扩展而来的。 2个问题:
- 我应该什么时候使用它?
- 里面应该放什么样的代码?
最佳答案
通常,当我需要在我的所有 Activity/Fragment 的一些生命周期回调中做一些工作时,我会使用基本 Activity/Fragment。
例如,如果您使用 Butter Knife (非常推荐),需要在调用setContentView
后调用Butterknife.bind(Activity a)
。因此,最好创建一个基本 Activity 并在其中扩展 setContentView
方法,如下所示:
@Override
public void setContentView(int layoutResID) {
super.setContentView(layoutResID);
ButterKnife.bind(this);
}
在 onCreate
开始时调用 setContentView
的子 Activity 中(在调用 super.onCreate
之后),ButterKnife.bind
会被自动调用。
另一个用例是当您想要实现一些辅助方法时。例如,如果您在 Activity 中多次调用 startActivity
,这将非常令人头疼:
startActivity(new Intent(this, NextActivity.class));
您可以像这样向您的基本 Activity 添加一个 start
方法:
protected void start(Class<? extends BaseActivity> activity) {
startActivity(new Intent(this, activity));
}
然后开始下一个 Activity ,例如:
start(NextActivity.class);
关于android - 我什么时候需要基础 Activity 和基础 fragment ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32552592/