Android 新人,博文是我的学习笔记,用于加深理解和记忆。这篇文章是我的第一篇文章,难免有错漏之处,或者不严谨的地方。有问题和意见,欢迎提出。
我在用toolbar时遇到了一些坑,与大家分享一下
我所用的toolbar的jar包是appcompat-v7-23.4.0
1:当我在activity初始化toolbar后,如果想要跟页面的actionbar进行绑定,此时你可以调用setSupportActionBar(mToolbar)方法,但是此时要注意的是mToolbar.setTitle("");必须要在调用setSupportActionBar方法之前设置,否则无效,而mToolbar.setNavigationOnClickListener方法必须要在调用setSupportActionBar方法之后设置,否则监听无效,而例如设置setTitleTextColor和setNavigationIcon无论在setSupportActionBar之前设置还是在之后设置都有效,但是在看另外一篇博文时,里面提到setNavigationIcon要设定在 setSupoortActionBar 后才有作用, 否則會出現 back button,但是我试了好久发现在appcompat-v7-23.4.0基础上的toolbar无论前后都有效,可能当时博文的作者用的jar包有bug,后来新的jar包把此问题修复了。
所以设置的代码可以用如下的方式设置,作为参考
mToolbar= (Toolbar) findViewById(R.id.mToolbar);
mToolbar.setTitleTextColor(getResources().getColor(R.color.white));
//必须在setSupportActionBar之前设置
mToolbar.setTitle("项目库");
//无论前后设置都有效
mToolbar.setNavigationIcon(org.commonui.R.drawable.toolbar_back_selector);
setSupportActionBar(mToolbar);
//必须在setSupportActionBar之后设置
mToolbar.setNavigationOnClickListener(newView.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});