2012-08-27 71 views

回答

0

嘗試以下示例代碼:

public class MainActivity extends Activity { 

private RadioGroup radioGroup; 

private static final String SELECTED_INDEX="SelectedIndex"; 

private OnCheckedChangeListener checkedChangedListener=new OnCheckedChangeListener() { 

    @Override 
    public void onCheckedChanged(RadioGroup group, int checkedId) { 
     saveSelectedIndex(checkedId); 
    } 
}; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    radioGroup = (RadioGroup) findViewById(R.id.rg); 
    radioGroup.setOnCheckedChangeListener(checkedChangedListener); 
    RadioButton rbtn=((RadioButton)radioGroup.findViewById(getSelectedValue())); 
    if(rbtn!=null){ 
     rbtn.setChecked(true); 
    } 
} 

private int getSelectedValue(){ 
    SharedPreferences pref=PreferenceManager.getDefaultSharedPreferences(this); 
    return pref.getInt(SELECTED_INDEX, -1); 
} 

private void saveSelectedIndex(int value){ 
    SharedPreferences.Editor editor=PreferenceManager.getDefaultSharedPreferences(this).edit(); 
    editor.putInt(SELECTED_INDEX, value); 
    editor.commit(); 
} 

} 
0

您已經添加RadioGroup中,你能夠閱讀它,並知道如何使用sharedpreferences?

如果是的話,我建議你在你的活動覆蓋的onPause()。在那裏,您可以讀取您的radiogroup的值並將其保存到共享首選項。

然後,如果需要的話,重寫的onResume()從sharedpreferences和更新UI閱讀。

+0

@Ali的回答和礦是互補的。你可以將他的代碼添加到onPause()。 –