如何解决Android:为“扬声器打开/关闭”创建一个ImageButton
我正在编写一个应用程序,在游戏中会计算并显示分数。
现在,我想借此机会打开/关闭扬声器。我认为,使用ImageButton应该是解决方案。
但是,当扬声器关闭时,如何“调暗”按钮,但必须保持激活状态。隐形或禁用不是解决方案。最好更改按钮中的图像吗?
请问有人有开关“开/关”按钮的示例。
我正在使用AndroidStudio4.1和Kotlin
解决方法
最好有一个复选框,因为该视图默认处理true / false状态。您必须为按钮创建一个可绘制对象,然后将其设置为按钮。
假设您的可绘制对象为cb_selector_sound
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/ic_sound_on" android:state_checked="true" />
<item android:drawable="@drawable/ic_sound_off" android:state_checked="false" />
</selector>
然后在这样的按钮中使用它:
<CheckBox
android:id="@+id/soundCheckbox"
android:button="@drawable/cb_selector_sound"
.../>
因此,您可以收听复选框的更改
//find the view
soundCheckbox.setOnCheckeChangedListener {_,isChecked ->
if (isChecked) {
//turn sound on
} else {
//turn sound off
}
}
因此视图担心外观,您担心逻辑
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。