EditText中drawableLeft和drawableStart之间有什么不同?

Owe*_*hao 14 android

起初我以为当我将系统语言改为阿拉伯语时,drawableStart会自动更改图标的位置,这是一种从右到左书写的语言.但是当我这样做时,什么也没发生.所以我猜他们是一样的?

Aus*_*ney 37

我不确定上面的答案是否正确.从我的实验中,除非您更改语言并启用RTL支持,否则图标始终位于同一位置.

drawableStart并且drawableEnd只有在API级别17及更高版本中启用RTL支持时才开始切换侧面.

将所有应用的"左/右"布局属性更改为新的"开始/结束"等效项.

  • 如果您将应用程序定位到Android 4.2(应用程序的targetSdkVersion或minSdkVersion为17或更高),则应
    使用"开始"和"结束"而不是"左"和"右".例如,
    android:paddingLeft应该成为android:paddingStart.

  • 如果您希望您的应用程序使用早于Android 4.2的版本(应用程序的targetSdkVersion或minSdkVersion为16或更低),那么您应该添加"start"并结束"除"left"和"right"之外.例如,你同时使用android:paddingLeft和android:paddingStart.

  • 这是正确的答案,而不是被接受的答案. (2认同)
  • 在我的情况下,当将图像放在按钮的drawableLeft上时,当我将相同的图像放在drawableStart上时,它是可见的图像变得不可见 `<Button android:id="@+id/btnGgle" android:layout_width="wrap_content" android:layout_height="wrap_content “ android:drawableStart="@drawable/ggle_logo" android:gravity="center_horizo​​ntal|center_vertical" android:padding="15dp" android:text="@string/ggle" app:backgroundTint="@color/white" app:cornerRadius =“10dp”/>` (2认同)