Android在sharedpreferences中存储无线电组ID并加载它 [英] Android store radiogroup id in sharedpreferences and load it

查看:61
本文介绍了Android在sharedpreferences中存储无线电组ID并加载它的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的App中,我想打开一个对话框,其中有一个带有一些项目的广播组(每个项目应该是一个Activity),用户可以从中进行选择.所选项目/ID应该存储在sharedpreferences中.该ID会在每次启动应用时加载并打开所选的项目/活动.

In my App i want to open a dialog window with a radiogroup with some items (each item should be an activity ) the user can choose from. The chosen item/ID should get stored in the sharedpreferences. The ID load every App start and open the chosen item/activity.

有人可以告诉我该怎么做吗?

Can someone tell me how to do that Please ?

推荐答案

有很多示例,但可以,我举一个例子:

There are many samples but ok, I'll give an example:

您可以在活动下定义2种方法:

You can define 2 methods under your activity:

private void loadSavedPreferences() {
    SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
    int selectedRadioID = sharedPreferences.getInt("SELECTED_RADIO", 0);

    if(selectedRadioID > 0) {
        // you got previously selected radio
        RadioButton rb = (RadioButton)findViewById(selectedRadioID);
        rb.setSelected(true);
    }
}

private void savePreferences(String key, int radioId) {
    SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
    Editor editor = sharedPreferences.edit();
    editor.putInt(key, radioId);
    editor.commit();
}

在您的活动onCreate方法上使用此方法.

Use this methods on your activities onCreate method.

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    loadSavedPreferences();

    RadioGroup rg = findViewById(R.id.your_radio_group_over_your_radios);
    rg.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(RadioGroup group, int checkedId) {
            savePreferences("SELECTED_RADIO", checkedId);
        }
    });

}

您应该改进此代码,但这会给您带来帮助.

You should improve this code, but this will give you the idea.

这篇关于Android在sharedpreferences中存储无线电组ID并加载它的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆