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();
? ? ?}
});