设置sdk 28之后,我的项目出现了陌生人的行为。其中之一是,如果以调试或发布模式运行我的应用程序,则对于一个可绘制形状,我在尺寸上会表现出陌生的行为。对于调试模式,一切正常,对于释放模式,则形状尺寸更大。 我不知道为什么或可能是什么(我本来以为可以保护自己并缩小自己,但是禁用后什么也没有改变)。 在android sdk 27中,一切正常。 这是形状代码:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true">
<shape android:shape="oval">
<padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" />
<solid android:color="@color/colorBluePrimary" />
</shape>
</item>
<item android:state_checked="false">
<shape android:shape="oval">
<padding android:bottom="0dp" android:left="0dp" android:right="0dp" android:top="0dp" />
<solid android:color="@color/colorLightGray2" />
</shape>
</item>
</selector>
这是使用的布局文件
<it.package.CheckableFrameLayoutIndicator
android:id="@+id/fl_indicator1"
android:layout_width="@dimen/fl_indicator_size"
android:layout_height="@dimen/fl_indicator_size"
android:layout_centerHorizontal="true"
android:background="@drawable/fl_registration_indicator_oval_shape"
android:padding="2dp">
这里是结果(问题是椭圆形):
发布