美文网首页
Toolbar实现标题居中效果

Toolbar实现标题居中效果

作者: black_history | 来源:发表于2018-10-04 03:49 被阅读0次

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

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

找了一下,没有找到设置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="标题"
        />
</android.support.v7.widget.Toolbar>

在代码中

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实现标题居中效果

      本文链接:https://www.haomeiwen.com/subject/htotaftx.html