android - 切换按钮事件不适用于各种设备

标签 android events togglebutton android-event

我正在各种型号上测试我的应用程序,我发现切换按钮打开和关闭事件不起作用。这是设备列表:

三星 YS5360 三星 Galaxy Note 三星 S Plus HTC 感觉 XE HTC 野火 S 摩托罗拉 RAZR
LG擎天柱黑色 索尼爱立信 Xperia neo V

我不确定自己做错了什么,因为我遵循了所有 Android 规范。这些事件适用于其他设备。有人可以帮我吗?

[重新编辑]

这就是我实现监听器的方式:

    @Override
    public void onCheckedChanged(CompoundButton arg0, boolean change) {

        if(change){
            if(text.containsKey("on")){
                // do something
            }
        }else{
            if(text.containsKey("off")){
                // do something
            }
        }
        if(text.containsKey("clicked")){
            // do something
        }
     // }
   }
};

我检查了 ON 和 OFF 状态,但这似乎不适用于其他设备。

最佳答案

使用文本来了解 ToggleButton 的状态是个坏主意。请改用 isChecked 参数。查看其 documentation.

@Override
public void onCheckedChanged (CompoundButton buttonView, boolean isChecked) {
    if (isChecked) {
        /* checked. ON */
    } else {
        /* unchecked. OFF */
    }
    ...
}

关于android - 切换按钮事件不适用于各种设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11593752/

相关文章:

android - Freetype Library 提供三重纹理和奇怪的符号

java - 按 currentDate 从 sqlDB 中选择数据

javascript - 在javascript中向图像添加标记?

icons - 如何将扩展器控件的切换按钮图标更改为 "+"和 "-"而不是箭头

android - 并非 ViewPager 的 fragment 中的所有 View 都会更新

java - Realm 数据库跨平台兼容性?

android - 限制应用程序安装在 Root设备上

java - 使用 JFreeChart 和 slider 更新图表

javascript - 家长补偿。没有听子 $emit 的声音

android - 在 Android 上自定义切换按钮