如何更改Toggle Button和CheckBox的选中状态

时间:2011-12-20 14:08:37

标签: android android-layout

我必须在我的应用程序中使用两个类

  1. 设置(用于保存设置)
  2. 主要班级
  3. 我在“设置”类中为“开”和“关”定义了“切换”按钮和复选框。 现在当我调用设置类和主类并更改切换按钮和复选框的检查状态并返回主类时,如果我再次调用Setting类,则切换按钮的复选状态和复选框不是改变它回到原来的状态请帮忙 我的代码:

    yes.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                if(((CheckBox) v).isChecked())
                    sound.toggle();
            }
        });
        sound.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
              public void onCheckedChanged(CompoundButton arg0, boolean isChecked) {
                Log.v("CheckBoxActivity", (isChecked ? "checked" : "not checked"));
              }
            });
          }
    
          public void doClick(View view) {
            Log.v("CheckBoxActivity", ((CheckBox) view).isChecked() ? "checked" : "not  checked");
          }
    

1 个答案:

答案 0 :(得分:0)

这可能是问题,因为每次活动开始时,都会采用组件的默认选择状态。

为了实现目标,您需要存储切换按钮和复选框所需的状态。然后,您必须在每次加载活动时设置相同的相应状态,这意味着在onCreate()之前你开始在这些组件上定义onClick()。

您可以使用SharedPreference对象一次存储状态,并在活动的onCreate()中使用相同的设置来设置切换按钮和复选框的存储状态。