Точная разница между гравитацией и layout_gravity
Возможный дубликат:
Android - гравитация и layout_gravity
Я работаю над android xml. Я использовал android:layout_gravity="center"
для выравнивания компонентов в определенном положении.
Теперь, когда я работал над Диалогом, как Activity, я наткнулся на android:gravity="center"
. Я нашел там, gravity
был использован, чтобы выровнять его child
с определенной позицией.
Я бы привел пример того, что это такое,
Android: гравитация = "центр"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_vertical"
android:orientation="vertical" >
<EditText
android:id="@+id/enterNumberEdit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:hint="Enter No." >
<requestFocus />
</EditText>
</LinearLayout>
Он выравнивает дочерний элемент LinearLayout
в центре.
Android: layout_gravity = "центр"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:orientation="vertical"
android:background="@drawable/dialog_background" >
</LinearLayout>
Он выравнивает сам LinearLayout
в центре.
Теперь мои вопросы:
- Если я прав в этих предположениях, то, что
gravity
для дочерних компонентов, а layout_gravity
- для родительского компонента.
- Когда выбрать
gravity
над layout_gravity
.
Я нашел это много объяснения, работая над xml до сих пор. Я хотел бы услышать гораздо лучшее объяснение этого. Дайте мне знать, если я где-то ошибаюсь
Ответы
Ответ 1
- Да, ваше понимание верное. Любой атрибут
layout_
дает инструкции родительскому виду.
- Как правило, если представление принимает всю ширину/высоту своего родителя, то вам не нужно указывать
layout_gravity
, вы, вероятно, найдете gravity
более полезным. Если ваше представление не принимает целого измерения его родителя, вы можете захотеть выровнять его в зависимости от желаемого внешнего вида.
Ответ 2
Их имя должно помочь вам:
android:gravity
задает гравитацию содержимого используемого View
.
android:layout_gravity
задает гравитацию View
или Layout
в родительском.
Для получения дополнительной информации посетите этот сайт
Ответ 3
android: гравитация задает тяжесть содержимого View, в котором он используется.
android: layout_gravity устанавливает серьезность представления или макета в его родительском объекте.