android:drawableRight vs android:drawableEnd

时间:2016-06-19 03:23:05

标签: android android-drawable

如果我在按钮上使用android:drawableRight="@drawable/my_image"

<Button
        android:id="@+id/my_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/my_button"
        android:drawableRight="@drawable/my_image"
        android:drawablePadding="4dp"/>

然后编辑中的警告/建议告诉我:

  

考虑将android:drawableRight替换为   android:drawableEnd="@drawable/my_image"以获得更好的支持   从右到左的布局

这是什么意思?你能不能再使用android:drawableRight了吗?

2 个答案:

答案 0 :(得分:3)

某些国家&#39;语言从右到左阅读。如果您没有考虑到这一点对您的布局元素进行编码,那么您的应用可能无法在其设备中正确显示。基本上,将left替换为start&amp;布局元素中包含right的{​​{1}}。这适用于XML 属性&amp;所述XML属性的。你可以看到结果&amp;如果您选择开发人员选项&amp ;,则可以在从右到左的条件下使用您的布局点按强制RTL布局

这是我最近使用的布局示例。请注意在 XML属性&amp;中使用结束。作为XML属性的

end

答案 1 :(得分:2)

除了Daniel的回答 drawableEnd drawableStart 可以用于 API_14 +。因此,如果您使用 minSdkVersion&lt; 14 ,除了 drawableEnd drawableStart 之外,您还必须使用 drawableRight drawableLeft