Какая разница между drawableLeft и drawableStart в EditText?

Сначала я подумал, что drawableStart автоматически изменит местоположение значка, когда я сменил системный язык на арабский, что является языком, написанным справа налево. Но когда я это сделал, ничего не произошло. Поэтому я думаю, что они одинаковы?

Ответ 1

Я не уверен, что ответ выше правильный. Из моих экспериментов значок всегда попадает в одно и то же место, если вы не измените язык и не включите поддержку RTL.

drawableStart и drawableEnd начинают только переключение сторон, когда включить поддержку RTL в API-интерфейсе 17 и выше.

Измените все свойства макета вашего приложения "влево/вправо" на новый эквивалент "начало/конец".

  • Если вы нацеливаете свое приложение на Android 4.2 (приложение targetSdkVersion или minSdkVersion равно 17 или выше), вы должны используйте "start" и "end" вместо "left" и "right". Например, фотографии android: paddingLeft должен стать android: paddingStart.

  • Если вы хотите, чтобы ваше приложение работало с версиями ранее Android 4.2 (приложение targetSdkVersion или minSdkVersion равно 16 или меньше), тогда вы следует добавить "начало" и "завершить" в дополнение к "слева" и "справа". Например, youd использует android: paddingLeft и android: paddingStart.