Toolbar实现标题居中效果

Toolbar用的非常多,可定制,很灵活。

它默认title是在toolbar内部左侧,其实这本没有什么,但是大家都把title往中间挪。

找了一下,没有找到设置title位置的方法,看大家都是往Toolbar里塞一个tv。

有两种情况:
1.单独使用Toolbar
2.和CollaspingToolbarLayout配合使用

第一种比较简单


   

在代码中

toolbar.setTitle("");

可以看到,我们把title设置成空的字符串,把它变相隐藏了。所以说不是真的把标题居中了,而是实现了那种视觉效果。


第二种又分两种情况。

1.实现和上文一样的效果,标题居中,不随页面滑动而滑动。

我们如果还是像上面那样把布局写到CollapsingToolbarLayout里,会看到那个作为标题的tv到了右边。

搞不懂什么情况,但是我猜是为了CollapsingToolbarLayout的title预留空间,虽然我没有给CollapsingToolbarLayout设置title但是它依然留出了它的收缩后的空间。

解决办法:CollapsingToolbarLayout的app:titleEnabled="false";,即不显示CollapsingToolbarLayout的title。

2.CollapsingToolbarLayout折叠后标题居中
这种情况就不必再Toolbar即添加TextView了

app:collapsedTitleGravity="center"

设定CollapsingToolbarLayout收起后,title的位置。

当然还有设定其伸展后title位置的

app:expandedTitleGravity="center";

你可能感兴趣的:(Toolbar实现标题居中效果)