【问题标题】:toggle button event not working on various devices切换按钮事件在各种设备上不起作用
【发布时间】:2012-07-20 13:55:43
【问题描述】:

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

三星 YS5360 三星 Galaxy Note 三星 S Plus HTC Sensation 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 状态,但这似乎不适用于其他设备。

【问题讨论】:

  • 关于我应该如何进行的任何想法?
  • 你将不得不发布一些相关的代码,因为我们没有什么可做的。
  • 使用调试器并确保它不会触发这些设备上的更改。
  • 尝试将示例应用程序“API demos”developer.android.com/tools/samples/index.html 安装到设备并首先检查该应用程序中的按钮功能。否则请发布一些相关代码。
  • 您能解释一下text 变量是什么以及如何设置它,因为它可能会改变逻辑

标签: android events togglebutton android-event


【解决方案1】:

试试这个代码

    toggle=(ToggleButton)findViewById(R.id.tglbtn);
    toggle.setOnClickListener(new OnClickListener() {
          public void onClick(View v) {
           // TODO Auto-generated method stub
          if(toggle.isChecked())
          {
           Toast.makeText(getApplicationContext(), "The state is changed to on", Toast.LENGTH_LONG).show();
           }
            else
            {
              Toast.makeText(getApplicationContext(), "The state is changed to off", Toast.LENGTH_LONG).show();
             }
             }
             });

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

    • 将不得不查看更多相关代码..和布局文件。
    • 对不起,伙计们,但您的所有建议似乎都不起作用..我束手无策!!
    猜你喜欢
    • 2016-11-29
    • 2016-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-19
    相关资源
    最近更新 更多