android - LinearLayout 中的第一个 View 上方/重叠第二个 View

标签 android android-linearlayout overlap view-hierarchy

是否可以在 LinearLayout 中显示第一个 View 与第二个 View 重叠?

我想像这样布局我的 View :

<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>

但我需要将布局中的第一个 View firstTextView 放置在(重叠的)secondTextView 之上。这可能吗?我正在使用 LinearLayout,因为我也在使用边距来获得重叠效果。

最佳答案

对我有用并且可能对你有用的是:

  1. 用 RelativeLayout 而不是 LinearLayout 包装您的 2 个 TextView,并设置 android:clipChildren="false"。这将防止重叠部分被剪掉。
  2. 将第二个 TextView 布局在第一个 TextView 下方
  3. 在代码中,对第一个 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();

关于android - LinearLayout 中的第一个 View 上方/重叠第二个 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16973327/

相关文章:

android - 按钮宽度与父 android 不匹配

android - 配置更改时为空对象引用

postgresql - 如何检查某个事件时间是否在 PostgreSQL 的时间范围内?

安卓布局: place a view between two views

r - 识别日期重叠的重复项

android - 使用设备管理器锁定任务模式时键盘不显示

java - Webview显示本地HTML页面

java - TextView 在 LinearLayout 中被截断

安卓布局: Align a TextView and a Spinner

java - 在不扩展 OrmLiteBaseActivity 或 Activity 的每个类中使用 OrmLite