gpt4 book ai didi

android - 单击另一个 View 时 View 被隐藏

转载 作者:行者123 更新时间:2023-11-29 18:28:56 25 4
gpt4 key购买 nike

我的问题 - 在我的布局中,当按下按钮时,上面的 View 被隐藏了。

我们以一个简单的布局为例:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layoutDirection="ltr"
android:orientation="vertical">

<Button
android:id="@+id/button"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:text="Button"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/button2"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

<Button
android:id="@+id/button2"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:text="Button"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toEndOf="@+id/button"
app:layout_constraintTop_toTopOf="parent" />

<Button
android:id="@+id/button3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginEnd="8dp"
android:text="This is view"
android:textColor="#ffffff"
android:background="#000000"
app:layout_constraintBottom_toTopOf="@+id/button"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="@+id/button"
app:layout_constraintTop_toBottomOf="@+id/button" />

此布局将如下所示(黑色 View 将位于 2 个按钮上方):

enter image description here

我的问题是,当我单击黑色 View 下方的其中一个按钮时,它会被隐藏:

enter image description here

有什么方法可以保持按钮动画但防止黑色 View 被按钮单击事件隐藏的情况?

最佳答案

问题出在 Android 用来设置按钮动画的默认动画上。默认情况下,单击按钮后,其 Z 属性(这是按钮的高度)会增加,以实现炫酷的阴影效果。您可以在本文中查看有关高程和平移 Z 的更多信息:

Mastering Shadows in Android

为了解决您的问题,您可以执行以下操作:

在您的 XML 文件中,在您希望留在后台的按钮上使用 android:stateListAnimator="@null"。关于这个问题有一篇非常好的帖子,您也可以查看:

Android 5.0 android:elevation Works for View, but not Button?

关于android - 单击另一个 View 时 View 被隐藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57440532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com