gpt4 book ai didi

java - 单击时更改图像按钮系统资源

转载 作者:行者123 更新时间:2023-12-01 23:45:15 25 4
gpt4 key购买 nike

我想改变,例如btn_star_big_off 到 btn_star_big_on

每次有人单击该按钮时,该按钮的状态都会发生变化。 Toogle 会很完美,但我不知道如何将其结合起来。而且我不知道如何更改按钮的状态。我发现我可以使用可绘制的 XML 文件来做到这一点,但在那里我只能访问我导入的图像,而不能访问系统资源的图像?

按钮:

<ImageButton
android:id="@+id/imageButton4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:src="@android:drawable/btn_star_big_off" />

这是我的可绘制 XML 的试用:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:drawable="@drawable/button" android:state_pressed="true"/>
<!-- pressed -->
<item android:drawable="@drawable/button"/>
<!-- default -->

</selector>

最佳答案

您需要使用ToggleButton

1) 在布局中,实现 ToggleButton

<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum="1">

<ToggleButton
android:layout_width=0dp"
android:layout_height="wrap_content"
android:layout_weight=".3"
android:background="@drawable/my_button"
android:text=""
android:textOff=""
android:textOn=""/>

</TableRow>

2)在drawable目录中创建xml布局(这里是my_button.xml)

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@android:drawable/btn_star_big_on" android:state_pressed="true"/><!-- pressed -->
<item android:drawable="@android:drawable/btn_star_big_on" android:state_focused="true"/><!-- focused -->
<item android:drawable="@android:drawable/btn_star_big_on" android:state_checked="true"/>
<item android:drawable="@android:drawable/btn_star_big_off" android:state_checked="false"/>
<item android:drawable="@android:drawable/btn_star_big_off"/> <!-- default -->
</selector>

如果你想有一个聚焦的img,我在这里添加另一个状态

关于java - 单击时更改图像按钮系统资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17191068/

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