<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="top" <!--this line-->
android:orientation="horizontal" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="0"
android:textSize="56dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="0"
android:textSize="36dp" />
</LinearLayout>
Разве это не должно привести к тому, что меньший t-вид "0" выровняется по верхней части внутреннего LinearLayout? Поскольку другой «0» больше по высоте, он увеличивает общую высоту внутреннего LinearLayout.
В качестве альтернативы, если вы включили это:
android:layout_gravity="top"
в t-виде меньшего 0 он также ничего не делает. Почему это? Оборачивает ли wrap_content LinearLayout каждое отдельное представление независимо от других? Если да, то почему установка гравитации на «центр» работает? В том смысле, что меньший ноль вертикально центрирован относительно своего родителя.
Я знаю, что вы можете просто установить меньшую высоту 0, чтобы она соответствовала родителю, и установить его собственную гравитацию сверху. Я просто пытаюсь понять это. Спасибо.