Разница между отступами и Android: гравитация - PullRequest
1 голос
/ 27 июля 2011

Я пытаюсь создать экран и не могу оценить разницу между android: layout_gravity и android: padding, если оба выравнивают представление на основе родительского макета, то насколько они отличаются друг от друга. Пожалуйста, порекомендуйте. Благодарю.

Ответы [ 3 ]

2 голосов
/ 27 июля 2011

Заполнение (см. Заголовок «Размер, отступы и поля» в этой ссылке) создает абсолютное расстояние (обычно в пикселях) между краем представления и его содержимым.

Гравитация позиционирует элемент относительно его родителя: в центре, слева, справа, сверху, снизу и т. Д., Но вы не можете указать абсолютное расстояние от края,например, 10 пикселей, без использования полей (или заполнения; прочитайте документы Android для получения информации о разнице между этими двумя).

1 голос
/ 27 июля 2011

Мне нравится думать о заполнении как о блоке внутри макета, в который будет помещено ваше содержимое (выравнивание зависит от силы тяжести). Там, где без заполнения гравитация изменит выравнивание содержимого относительно границы макета.

0 голосов
/ 29 июля 2011

android: заполнение устанавливает абсолютные значения заполнения в текущем макете. android: layout_gravity устанавливает гравитацию текущего макета относительно родителя.

<Linearlayout android:id="@+id/L1">
 <Linearlayout android:id="@+id/L2"
     ...
     android:layout_gravity="bottom|left"
     android:padding="5px">
     <TextView android:id="@+id/T1"
         .../>

</Linearlayout>

Следовательно, L2 выровнен по левому нижнему углу L1 и android: padding устанавливает отступ 5 пикселей на каждой из четырех сторон для макета L2 (что влияет на дочерние размещения L2 = T1).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...