Toolbar用的非常多,可定制,很靈活。
它默認(rèn)title是在toolbar內(nèi)部左側(cè),其實這本沒有什么,但是大家都把title往中間挪。
找了一下,沒有找到設(shè)置title位置的方法,看大家都是往Toolbar里塞一個tv。
有兩種情況:
1.單獨使用Toolbar
2.和CollaspingToolbarLayout配合使用
第一種比較簡單
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?android:actionBarSize">
<TextView
android:id="@+id/toolbar_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="標(biāo)題"
/>
</android.support.v7.widget.Toolbar>
在代碼中
toolbar.setTitle("");
可以看到,我們把title設(shè)置成空的字符串,把它變相隱藏了。所以說不是真的把標(biāo)題居中了,而是實現(xiàn)了那種視覺效果。
第二種又分兩種情況。
1.實現(xiàn)和上文一樣的效果,標(biāo)題居中,不隨頁面滑動而滑動。
我們?nèi)绻€是像上面那樣把布局寫到CollapsingToolbarLayout里,會看到那個作為標(biāo)題的tv到了右邊。
搞不懂什么情況,但是我猜是為了CollapsingToolbarLayout的title預(yù)留空間,雖然我沒有給CollapsingToolbarLayout設(shè)置title但是它依然留出了它的收縮后的空間。
解決辦法:CollapsingToolbarLayout的app:titleEnabled="false";,即不顯示CollapsingToolbarLayout的title。
2.CollapsingToolbarLayout折疊后標(biāo)題居中
這種情況就不必再Toolbar即添加TextView了
app:collapsedTitleGravity="center"
設(shè)定CollapsingToolbarLayout收起后,title的位置。
當(dāng)然還有設(shè)定其伸展后title位置的
app:expandedTitleGravity="center";