我在已经居中的 TextView 中居中文本时遇到问题:
就是这样的布局:
<RelativeLayout>...
<ImageView
android:id="@+id/image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:src="@drawable/w0"
android:layout_margin="10dip"
android:background="@color/green1"
/>
<TextView
android:id="@+id/temperature"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignBottom="@id/image"
android:layout_alignTop="@id/image"
android:layout_toRightOf="@id/image"
android:text="15º"
android:textSize="60dip"
style="bold"
android:textColor="@color/blue"
android:gravity="center"
android:layout_marginLeft="7dip"
android:background="@color/green1"
/>
<TextView
android:id="@+id/min_temperature"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@id/temperature"
android:layout_toRightOf="@id/temperature"
android:text="M 21º"
android:textSize="20dip"
style="bold"
android:textColor="@color/blue"
android:layout_marginLeft="5dip"
android:background="@color/orange1"
/>
<TextView
android:id="@+id/max_temperature"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/temperature"
android:layout_toRightOf="@id/temperature"
android:text="m 10º"
android:textSize="20dip"
style="bold"
android:textColor="@color/blue"
android:layout_marginLeft="5dip"
android:background="@color/orange2"
/>
这就是显示的布局图像:
我不明白为什么 15º 不在 TextView 中居中。问题是由于 TextView 使用 alignTop 和 alignBottom 强制居中,但我不明白为什么它不起作用。我知道我可以使用一些嵌套布局来解决这个问题,但我更喜欢仅使用 RelativeLayout 来获得解决方案,或者如果无法理解原因。
还有一种解决方案可以像现在一样将最大和最小 TextViews 与 15º 文本(不是 TextView)的顶部和底部对齐。