2
<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>

小さい方の「0」の t ビューを、内側の LinearLayout の上部に揃えるべきではありませんか? 他の "0" は高さが大きいため、内側の LinearLayout の全体的な高さが増加します。

または、これを含めた場合:

android:layout_gravity="top"

小さい方の 0 の t ビュー内では、何もしません。どうしてこれなの?LinearLayout の wrap_content は、他のビューとは関係なく個々のビューをラップしますか? もしそうなら、重力を「中心」に設定するとなぜ機能するのでしょうか? 小さい方のゼロがその親に対して垂直方向に中央に配置されるという意味で。

親と一致するように小さい0の高さを設定し、独自の重力を上に設定できることを私は知っています。私はこれを理解しようとしているだけです。ありがとう。

4

3 に答える 3