Основываясь на Android документе, который не дает много объяснений, какая разница между setPadding() vs setPaddingRelative()?
Android View setPadding() vs setPaddingRelative()
Ответ 1
setPaddingRelative имеет этот код внутри:
switch(getResolvedLayoutDirection()) {
case LAYOUT_DIRECTION_RTL:
setPadding(end, top, start, bottom);
break;
case LAYOUT_DIRECTION_LTR:
default:
setPadding(start, top, end, bottom);
}
Поэтому, когда вы устанавливаете заполнение с помощью setPaddingRelative, он изменяет значения вправо и вправо в зависимости от направления макета пользователя.