写应用是有一个好的BaseActivity会为你节省很多代码.下面我们就来写一个类似AppCompatActivity一样直接带有TitleBar的BaseActivity.这样的话既便于修改又方便使用
实现的思路主要是
1.找到activity的根布局,
2.做一个适合自己使用的自定义title
3.将自定义的titleBar通过Java代码设置到BaseActivity中
话不多言,有码为证
这里只贴上关键代码,其他的很简单.可以自己根据需求实
private void setCustomTitle() {
//做一个假的自定义TitleBar
TextView customTitleBar = new TextView(this);
customTitleBar.setText("这是一个假的TitleBar");
LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
//找到activity的根布局View
ViewGroup viewGroup = findViewById(android.R.id.content);
//找到根视图下正真处理的子视图
ViewGroup ChildViewGroup = (ViewGroup) viewGroup.getChildAt(0);
//将自定义视图添加的子视图中,因为是title的缘故,我们直接将index参数设置在第一位(value=0即可)
ChildViewGroup.addView(customTitleBar, 0, param);
}
至于titleBar具体要实现的功能,就自己根据功能实现吧