0

我尝试在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

在此处输入图像描述

有什么问题,我该如何解决?

4

2 回答 2

1

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" />
于 2017-07-27T07:45:46.260 回答
0

我想稍微改变一下:把View放在TextView上面,其他保持不变

如果上面所说的意思是TextView关于 z 轴,那么你就错了。

你能做的,只是改变布局中视图的顺序:声明为第一个的布局将首先布局,下一个布局在其顶部。

<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>
于 2017-07-27T08:19:51.507 回答