写一个基础的Activity,在需要的activity里继承这个类就好了
思路是让我们的写一个基础的Activity,让要使用通用控件的Activity继承它,代码如下:
public class BaseActivity extends AppCompatActivity {
//菜单按钮控件绑定
@Nullable
@BindView(R.id.view_top_back)
View viewBack;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow().setStatusBarColor(getResources().getColor(R.color.colorPrimary));
}
}
@Override
public void setContentView(int layoutResID) {
super.setContentView(layoutResID);
ButterKnife.bind(this);
if (viewBack != null) {
viewBack.setVisibility(isEnableTopBack() ? View.VISIBLE : View.GONE);
}
}
//点击控件触发
@Optional
@OnClick(R.id.view_top_back)
void back(View view) {
if (isEnableTopBack()) {
finish();
}
}
public boolean isEnableTopBack() {
return true;
}
}
2.在其他的activity里继承这个BaseActivity
3.在其他的activty里对应的xml布局文件里引入通用xml页面