是否可以在LinearLayout中显示与第二个重叠的第一个视图?
我想像我这样布局我的观点:
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentRight="true" >
<TextView
android:id="@+id/firstTextView"
android:layout_width="wrap_content"
android:layout_height="wrapContent" />
<TextView
android:id="@+id/secondTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
但我需要从布局第一个视图firstTextView放置在(重叠)secondTextView的顶部.这可能吗?我正在使用LinearLayout,因为我也在使用边距来获得重叠效果.
解决方法:
对我有用并可能对你有用的是:
>用RelativeLayout而不是LinearLayout包装你的2个TextViews并设置android:clipChildren =“false”.这将防止重叠部分被剪裁.
>在第一个TextView下面布置第二个TextView
>在代码中,在第一个TextView上调用bringToFront().默认情况下,首先绘制第一个textview,并将其放在第二个textview下面.调用bringToFront()将改变该顺序.
所以布局可以是这样的:
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:clipChildren="false">
<TextView
android:id="@+id/firstTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#00000000"
android:text="First View" />
<TextView
android:id="@+id/secondTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/firstTextView"
android:background="#00000000"
android:layout_marginTop="-13dp"
android:text="Second View"/>
</RelativeLayout>
和:
TextView firstTextView = (TextView)findViewById(R.id.firstTextView);
firstTextView.bringToFront();