当使用带有额外drawable的复选框(除了用于复选框的复选框)使用drawableLeft时,两个drawables相互重叠。
复选框设置没有什么特别之处,在这里:
<CheckBox android:id="@+id/low_priority_checkbox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/low_priority"
android:textColor="@color/primary_text"
android:textAppearance="?android:attr/textAppearanceSmall"
android:drawableLeft="@drawable/ic_primary_priority_flag_low_medium"/>
实际结果:
预期结果:
在API&lt; = 16
的设备上,compileSdkVersion 22会出现此问题顺便说一句,使用drawableRight可以正常工作。
这是框架中的错误吗? 任何解决方法?
答案 0 :(得分:0)
为复选框添加样式(style =&#34; @android:style / Widget.Holo.Light.CompoundButton.CheckBox&#34;),可以将drawable移动到正确的位置。唯一的问题是,对于API <= 16的设备,drawable和text之间的距离大于正常情况。
我的一个CheckBox xml列出如下:
<CheckBox
android:id="@+id/male_toilet_checkbox"
style="@android:style/Widget.Holo.Light.CompoundButton.CheckBox"
android:layout_width="wrap_content"
android:layout_height="28dp"
android:drawableLeft="@drawable/m"
android:drawableStart="@drawable/m"
android:text="@string/male_toilet"
android:textSize="14sp"
android:textColor="#ff6c51ff"
app:layout_constraintTop_toBottomOf="@+id/split_line1" />
&#13;