【问题标题】:Android: create an ImageButton for Speaker On/OffAndroid:为扬声器开/关创建一个 ImageButton
【发布时间】:2021-02-11 06:23:21
【问题描述】:

我正在编写一个应用程序,在游戏中计算和显示分数。

现在我想提供一个打开/关闭扬声器的机会。我认为,使用 ImageButton 应该是解决方案。

但是,当扬声器关闭时,我如何“调暗”按钮,但按钮必须保持活动状态。隐形或禁用不是解决方案。最好是更改按钮中的图像吗?

请问有谁有开关按钮的例子吗?

我正在开发 AndroidStudio4.1 和 Kotlin

【问题讨论】:

  • 提供的答案是否正确?你会这样标记它吗?

标签: android-studio kotlin imagebutton


【解决方案1】:

最好有一个复选框,因为该视图默认处理真/假状态。您必须为按钮创建一个可绘制对象,然后将其设置为按钮。

假设你的drawable是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
    }

}

所以视图担心外观而你担心逻辑

【讨论】:

    猜你喜欢
    • 2013-04-17
    • 2012-08-27
    • 2014-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-15
    • 2013-04-25
    相关资源
    最近更新 更多