在我以编程方式设置后,图像上的 FrameLayout textview 消失
FrameLayout textview over image disappear after i set the programmatically
我有一个 recyclerview 项目,它是一个 frameLayout,上面有一个 ImageView 和一个 TextView。
我已经设置了 xml 值,但在 onBindViewHolder 中我做了一些操作并将值设置为视图
布局像吹牛
<FrameLayout
android:id="@+id/img_frame"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/message_received_item"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<com.package.views.RoundedImageView
android:id="@+id/img_rcv_msg_image"
android:layout_width="210dp"
android:layout_height="210dp"
android:adjustViewBounds="true"
android:elevation="8dp"
android:maxWidth="320dp"
android:maxHeight="320dp"
android:minWidth="150dp"
android:minHeight="150dp"
android:scaleType="centerCrop"
app:bottomRightCorner="20dp"
app:topLeftCorner="20dp"
app:srcCompat="@android:drawable/ic_menu_report_image"
tools:ignore="ContentDescription" />
<TextView
android:id="@+id/img_rcvName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="top|start"
android:layout_margin="8dp"
android:text="Unknown"
android:textColor="#f00"
android:textSize="12sp" />
<TextView
android:id="@+id/img_rcv_msg_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="8dp"
android:text="--:--"
android:textColor="#f00"
android:textSize="10sp"
android:textStyle="italic" />
</FrameLayout>
在 Android Studio 的布局设计预览中,我可以正确地看到 ImageView 上方的 TextView(这是自定义的,但不用担心)。但是,在 RecyclerView 的 onBind 中,我计算了我的值,当我将位图设置为 ImageView 并将文本设置为 TextViews 时,TextViews 根本不显示。我想隐藏在 ImageView 后面。
有谁知道为什么?
第一个假设是您的 RoundedImageView 位于文本上方(由于 elevation 属性)。从 ImageView 移除高度或将 TextView 设置为大于 8
我有一个 recyclerview 项目,它是一个 frameLayout,上面有一个 ImageView 和一个 TextView。 我已经设置了 xml 值,但在 onBindViewHolder 中我做了一些操作并将值设置为视图
布局像吹牛
<FrameLayout
android:id="@+id/img_frame"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/message_received_item"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<com.package.views.RoundedImageView
android:id="@+id/img_rcv_msg_image"
android:layout_width="210dp"
android:layout_height="210dp"
android:adjustViewBounds="true"
android:elevation="8dp"
android:maxWidth="320dp"
android:maxHeight="320dp"
android:minWidth="150dp"
android:minHeight="150dp"
android:scaleType="centerCrop"
app:bottomRightCorner="20dp"
app:topLeftCorner="20dp"
app:srcCompat="@android:drawable/ic_menu_report_image"
tools:ignore="ContentDescription" />
<TextView
android:id="@+id/img_rcvName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="top|start"
android:layout_margin="8dp"
android:text="Unknown"
android:textColor="#f00"
android:textSize="12sp" />
<TextView
android:id="@+id/img_rcv_msg_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="8dp"
android:text="--:--"
android:textColor="#f00"
android:textSize="10sp"
android:textStyle="italic" />
</FrameLayout>
在 Android Studio 的布局设计预览中,我可以正确地看到 ImageView 上方的 TextView(这是自定义的,但不用担心)。但是,在 RecyclerView 的 onBind 中,我计算了我的值,当我将位图设置为 ImageView 并将文本设置为 TextViews 时,TextViews 根本不显示。我想隐藏在 ImageView 后面。 有谁知道为什么?
第一个假设是您的 RoundedImageView 位于文本上方(由于 elevation 属性)。从 ImageView 移除高度或将 TextView 设置为大于 8