android:layout_alignTop 与 android:layout_alignBottom 的工作方式不同
android:layout_alignTop does not work similar to android:layout_alignBottom
我尝试在RelativeLayout中创建一个半透明的红色View和一个TextView,View的高度跟随TextView的高度,当TextView在半透明的红色View上方时,它可以正常工作:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<View
android:background="#FF0000"
android:alpha="0.5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/textView"/>
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="TEST"
android:textSize="50dp"
android:textColor="#000000"/>
</RelativeLayout>
但我想稍微改一下:把View放在TextView上面,其他不变,我试过把android:layout_alignBottom
改成android:layout_alignTop
:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<View
android:background="#FF0000"
android:alpha="0.5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignTop="@id/textView"/>
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="TEST"
android:textSize="50dp"
android:textColor="#000000"/>
</RelativeLayout>
但现在 View
似乎不符合 TextView
的高度:
问题是什么,我该如何解决?
在视图中添加 android:layout_alignBottom="@+id/textView"
。例如-
<View
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignTop="@id/textView"
android:layout_alignBottom="@+id/textView"
android:alpha="0.5"
android:background="#FF0000" />
I want to change it a bit: put the View above the TextView and others remain unchanged
如果说 above 你的意思是关于 z 轴在 TextView
之上,那么你就错了。
您可以做的,只是更改布局中视图的顺序:第一个声明的布局将首先布局,下一个将布局在它之上。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="TEST"
android:textSize="50dp"
android:textColor="#000000"/>
<View
android:background="#FF0000"
android:alpha="0.5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/textView"/>
</RelativeLayout>
我尝试在RelativeLayout中创建一个半透明的红色View和一个TextView,View的高度跟随TextView的高度,当TextView在半透明的红色View上方时,它可以正常工作:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<View
android:background="#FF0000"
android:alpha="0.5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/textView"/>
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="TEST"
android:textSize="50dp"
android:textColor="#000000"/>
</RelativeLayout>
但我想稍微改一下:把View放在TextView上面,其他不变,我试过把android:layout_alignBottom
改成android:layout_alignTop
:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<View
android:background="#FF0000"
android:alpha="0.5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignTop="@id/textView"/>
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="TEST"
android:textSize="50dp"
android:textColor="#000000"/>
</RelativeLayout>
但现在 View
似乎不符合 TextView
的高度:
问题是什么,我该如何解决?
在视图中添加 android:layout_alignBottom="@+id/textView"
。例如-
<View
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignTop="@id/textView"
android:layout_alignBottom="@+id/textView"
android:alpha="0.5"
android:background="#FF0000" />
I want to change it a bit: put the View above the TextView and others remain unchanged
如果说 above 你的意思是关于 z 轴在 TextView
之上,那么你就错了。
您可以做的,只是更改布局中视图的顺序:第一个声明的布局将首先布局,下一个将布局在它之上。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="TEST"
android:textSize="50dp"
android:textColor="#000000"/>
<View
android:background="#FF0000"
android:alpha="0.5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/textView"/>
</RelativeLayout>