事情是这样开始的,
1.我写了一个toolbar的公共layout,如下
<ImageButton android:id="@+id/returnLast" android:layout_width="@dimen/x20" android:layout_height="@dimen/x20" android:layout_alignParentStart="true" android:layout_centerHorizontal="false" android:layout_margin="@dimen/x5" android:background="@drawable/left" android:scaleType="fitXY" /> <ImageButton android:id="@+id/close" android:layout_width="@dimen/x20" android:layout_height="@dimen/x20" android:layout_alignParentEnd="true" android:layout_centerHorizontal="false" android:layout_margin="@dimen/x5" android:background="@drawable/close" android:scaleType="fitXY" />效果如下:
然后使用<include>标签,就可以在很多不同的布局上共用这个界面了
2.为了美观,设置了透明状态栏
(1)在BaseActivity的initToolBar(String title)方法中调用
//透明状态栏 getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
(2)在公用toolbar的最外层布局中,加上
android:clipToPadding="true" android:fitsSystemWindows="true"
(3)就这么简单,接下来是见证奇迹的时刻!
诶???怎么扁了???
开始解决问题,
android:fitsSystemWindows="true"
根据以往的经验,这个属性用于让状态栏空出来不被页面内容占用,如果不加这个属性,内容就会挤占状态栏,去看看官网的解释吧
padding会被忽略。系统会为该View设置一个paddingTop,值为statusbar的高度。fitsSystemWindows默认为false。
作者:flaming
链接:https://www.jianshu.com/p/5cc3bd23be7b
來源:简书
这样问题就很明显了,本来设置的
android:layout_margin="@dimen/x5“在调用fitSystemWindows之后,toolbar新增了一个属性,paddingTop值为状态栏的高度,造成了变形,
那么只要把layout_marginTop属性去掉,只保留左边的边距,就可以正常显示了吧
android:layout_marginLeft="@dimen/x5",问题解决
402



被折叠的 条评论
为什么被折叠?



