Toolbar内控件居中

场景

Toolbar子控件LinearLayoutRelativeLayout时LinearLayoutRelativeLayout内控件不居中而与Toolbar左边缘存一定边距。

源码

条件

contentInsetStart != RtlSpacingHelper.UNDEFINED || contentInsetEnd != RtlSpacingHelper.UNDEFINED

执行

mContentInsets.setRelative(contentInsetStart, contentInsetEnd)

Toolbar内控件居中_第1张图片
中间调法
Toolbar内控件居中_第2张图片
变量

如图`UNDEFINED`为最小值。故左现5dp边距。

解决

Toolbar加一属性即可

app:contentInsetStart="0dp"

补充

toolBar.getToolbar().setPadding(0, StatusBarUtils.getStatusBarHeight(this), 0, 0);亦可解决。

注意

于横屏(平板)设左图时app:contentInsetStart="0dp"无效而toolBar.getToolbar().setPadding(0, StatusBarUtils.getStatusBarHeight(this), 0, 0);有效。

你可能感兴趣的:(android)