2011-12-20 87 views
0

我必須改變兩個類在我的應用程序如何切換按鈕的選中狀態和CheckBox

  1. 設置(保存設置)
  2. 主類

我所定義的切換按鈕和設置類中的複選框打開和關閉。 現在當我調用設置類並從主類中更改切換按鈕和複選框的選中狀態並返回主類時,如果再次調用設置類,則切換按鈕和複選框的選中狀態爲不能改變它回來給它原來的狀態,請幫助 我的代碼:

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"); 
     } 
+0

該複選框也無法正常工作.Plz任何幫助?這是我的代碼是=(CheckBox)findViewById(R.id.SoundCheckbox); \t yes.setOnClickListener(新OnClickListener(){ \t \t \t \t @覆蓋 \t \t公共無效的onClick(視圖v){ \t \t如果(yes.isChecked()){ \t \t \t yes.setChecked(假); \t \t} \t \t其他{ \t \t \t yes.setChecked(真); \t \t} \t \t} \t}); – RizN81 2011-12-21 05:24:06

回答

0

這可能會是問題,因爲每個活動啓動時,它會採取默認選擇狀態的組件。

爲了達到你的目標,你需要存儲你所需要的狀態切換按鈕和checkbox.And那麼你就必須設置相同的加載活動,每次的根據狀態,在意思的onCreate()只然後再開始在這些組件上定義onClick()。

您可以使用SharedPreference對象一次存儲狀態,並在您的activity的onCreate()中使用該對象來設置切換按鈕和複選框的存儲狀態。