Po przeczytaniu kodu źródłowego Androida (View.java) wydaje się, że paddingStart i paddingEnd pomagają zadbać o kierunek liter (od lewej do prawej od prawej do lewej) określony przez użytkownika.
W ten sposób paddingStart interpretowany jest jako paddinfLeft w językach LTR i paddingRight w językach RTL.
źródłowy kod z View.java (Android 4.0.1):
switch (getResolvedLayoutDirection()) {
case LAYOUT_DIRECTION_RTL:
// Start user padding override Right user padding. Otherwise, if Right user
// padding is not defined, use the default Right padding. If Right user padding
// is defined, just use it.
if (mUserPaddingStart >= 0) {
mUserPaddingRight = mUserPaddingStart;
} else if (mUserPaddingRight < 0) {
mUserPaddingRight = mPaddingRight;
}
if (mUserPaddingEnd >= 0) {
mUserPaddingLeft = mUserPaddingEnd;
} else if (mUserPaddingLeft < 0) {
mUserPaddingLeft = mPaddingLeft;
}
break;
case LAYOUT_DIRECTION_LTR:
default:
// Start user padding override Left user padding. Otherwise, if Left user
// padding is not defined, use the default left padding. If Left user padding
// is defined, just use it.
if (mUserPaddingStart >= 0) {
mUserPaddingLeft = mUserPaddingStart;
} else if (mUserPaddingLeft < 0) {
mUserPaddingLeft = mPaddingLeft;
}
if (mUserPaddingEnd >= 0) {
mUserPaddingRight = mUserPaddingEnd;
} else if (mUserPaddingRight < 0) {
mUserPaddingRight = mPaddingRight;
}
}
Należy również pamiętać, że nie wydają się one publiczne. Przynajmniej Eclipse nie skompiluje ich dla mnie. – Timmmm
@Timmmm musi mieć ustawiony cel na api 17+, aby mógł się skompilować. – schwiz
@schwiz api 17 nie był w tej chwili dostępny. Ale teraz możesz ustawić poziom api na 17, aby móc korzystać z tych pól. – Mathieu