出处
这两天在查看 GitHub 上的一个比较火的开源库 BaseRecyclerViewAdapterHelper 的 demo 过程中,学到了一项新的技能。这里整理出来,与大家分享一下。
实现的功能
我们在写项目的过程中,几乎每个 Activity 中 都是有一个 标题栏的。我的常规写法就是:每创建一个新的 Activity , 都会在布局文件中添加一个 toolbar (可以是自定义的,或者是系统的 ToolBar)。 那么这次 GET 到的新技能,就是一次性帮你解决 每个 Activity 都要重复添加 toolbar 的问题。
相关实现代码
我们在项目初期,都会有一个 BaseActivity 来做一些统一性的操作,然后所有 Activity 统一继承于 这次我们也是在 BaseActivity 中去进行实现的。
那么我们来看一下 BaseActivity主要代码:
public class BaseActivity extends FragmentActivity {
private LinearLayout root_layout;
private View toolbar_layout;
private TextView tv_left_back;
private TextView tv_title;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 重点
super.setContentView(R.layout.layout_root);
initToolbar();
}
@Override
public void setContentView(@LayoutRes int layoutResID) {
setContentView(View.inflate(this, layoutResID, null));
}
@Override
public void setContentView(View view) {
root_layout = (LinearLayout) findViewById(R.id.root_layout);
if (root_layout != null) {
root_layout.addView(view, new Vi