gpt4 book ai didi

java - 更改点击事件的按钮背景颜色?

转载 作者:太空宇宙 更新时间:2023-11-04 13:58:15 25 4
gpt4 key购买 nike

当我在 Activity 上声明按钮并设置 android:onClick 属性时, Activity 会在按下时自动更改按钮的背景颜色。

现在我在 fragment 上有一个按钮。由于我不能在这里使用 android:onClick ,所以我使用 onClickListener 来代替。该按钮可以工作,但它不再改变其样式。

我必须手动执行此操作吗?怎么办?

最佳答案

我们需要一个 XML 文件,drawable 选择器。我用 res/drawable/bg_button.xml 命名此文件:

<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_focused="true" android:drawable="@drawable/bg_button_pressed"/>
<item android:state_pressed="true" android:drawable="@drawable/bg_button_pressed" />
<item android:drawable="@drawable/bg_button_normal" /> <!-- normal state -->
</selector>

对于res/drawable/bg_button_pressed.xml:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="color when pressed" />
</shape>

创建一个新的 XML 文件,将其命名为 res/drawable/bg_button_normal.xml,然后复制上面的代码。然后,将 android:color 替换为正常颜色,即按钮处于正常状态时的颜色。

最后:

<Button
android:id="@+id/..."
android:text="@string/..."
android:background="@drawable/bg_button"/>

如果您没有 res/drawable 文件夹,请创建一个新文件夹。

关于java - 更改点击事件的按钮背景颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29590132/

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