本文主要是介绍CollapsingToolbarLayout中title属性在全屏模式下被遮挡,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
起因:
使用AppBarLayout的折叠效果加title置顶效果
问题1:
信心满满使用CollapsingToolbarLayout中的title属性想要显示完整的字符串就应该让toolbar不占满宽度,因为这个title中的字符串会显示在toolbar中剩余的空间内
问题2:
CollapsingToolbarLayout中的title显示的位置和字体大小不是我想要的,幸好这个我们可以设置,不麻烦,先看看属性:
expandedTitleTextAppearance:展开时显示的title字体样式
expandedTitleMarginStart:展开时距离左边距,默认有边距
expandedTitleMargin...:包括End,Top,Bottom,同上
collapsedTitleTextAppearance:折叠时title就到toolbar中了,使用这个属性设置字体的样式
样式示例:
<style name="AppBarTextStyle17sp"><item name="android:textSize">17sp</item><item name="android:textColor">#333333</item> </style>
感觉没什么问题了,运行之后发现,toolbar和状态栏重叠了,而我手机有刘海,这还能忍?下一步
自以为是的在代码中给toolbar设置了marginTop,神奇的发现title不往toolbar去了,而是往下!!!
最终还是找到了解决的办法,代码如下
ViewGroup.LayoutParams layoutParams = mToolbar.getLayoutParams(); layoutParams.height = layoutParams.height + ScreenCalcUtil.getStatusHeight(mContext); mToolbar.setLayoutParams(layoutParams); mToolbar.setPadding(0, ScreenCalcUtil.getStatusHeight(mContext), 0, 0);
先改变toolbar的高度,高度等于本身高度加状态栏高度
然后设置paddingTop,高度等于状态栏高度
遇到问题记录一下
这篇关于CollapsingToolbarLayout中title属性在全屏模式下被遮挡的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!