在相对布局中重叠的TextViews
问题描述:
我在我的content_main中有这两个TextViews,我是初学者,我无法弄清楚为什么它们在中心重叠,我尝试调整一切,但它仍然不起作用。在相对布局中重叠的TextViews
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:gravity="top"
android:text=""
android:id="@+id/nameTextView"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:textSize="35sp"
android:textColor="#1a237e" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:gravity="bottom"
android:text=""
android:id="@+id/temperatureTextView"
android:layout_alignParentTop="false"
android:layout_centerHorizontal="true"
android:textSize="50sp"
android:textColor="#00bcd4" />
答
尝试在第二TextView的添加此码(@tempratureTextView
):
layout_below="@+id/nameTextView"
答
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text=""
android:id="@+id/nameTextView"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:textSize="35sp"
android:textColor="#1a237e" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text=""
android:id="@+id/temperatureTextView"
android:layout_below="@+id/nameTextView"
android:layout_centerHorizontal="true"
android:textSize="50sp"
android:textColor="#00bcd4" />
</RelativeLayout>
布局XML以上将工作。 除此之外,我注意到您正在尝试使用android:gravity
将TextView放置在顶部和底部。这是行不通的,因为android:gravity
只能设置TextView中内容(文本)的重力。使用android:layout_gravity
在父容器内设置TextView的引力。
答
layout_alignParentTop确保您的视图保持在顶部,无论其他视图如何。
相同的东西layout_alignParentBottom它使视图坚持到底。
在你的场景中,你希望这些TextView一个在其他下面,所以你必须指定android使用底部元素的layout_below。
无论如何,你有其他人提供的答案,只是说明理由。
你想做什么?如果您尝试堆叠它们,请使用LinearLayout。如果您尝试堆叠它们并且您必须使用RelativeLayout并堆叠它们,请移除第二个TextView上的'layout_alignParentTop'并添加'layout_below = @ id/nameTextView' –