如何保存警报对话框的单击位置,以便下次打开上一个选定项目时高亮显示



我制作了一个带有单选按钮的对话框,如下所示:

    AlertDialog streamQualityDialog;
    // Strings to Show In Dialog with Radio Buttons
    final CharSequence[] items = {" Low "," High "};
    // Creating and Building the Dialog
    final AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle("Quality:");
    builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int position) {

            final String channelLinkUrl = LinkConfig.getString(Player.this,
                    LinkConfig.CHANNEL_LINK_URL) + "?";
            switch (position) {
                case 0:
                   new ChannelLinkLoader(Player.this, channel, currentCategory + "").execute(channelLinkUrl + "channelId="
                            + channel.getChannelId() + "&highQuality=off" + "&");
                   break;
                case 1:
                   new ChannelLinkLoader(Player.this, channel, currentCategory + "").execute(channelLinkUrl + "channelId="
                            + channel.getChannelId() + "&highQuality=on" + "&");
                   break;
            }
            streamQualityDialog.dismiss();
        }

    });
    streamQualityDialog = builder.create();
    streamQualityDialog.show();

现在对话框打开,单选按钮选项为单选,单击时单选按钮高亮显示。主要问题是,当我之前第二次打开对话框时,如果我选择了任何项目,那么我希望在之前选择的项目上选择单选按钮。

我怎样才能做到这一点?

我所做的是设置public int selectedElement=-1;我更换了这个

builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener()

带有

builder.setSingleChoiceItems(items,selectedElement,new DialogInterface。OnClickListener()

在内部点击我设置选择项目的位置,如下所示:

selectedElement=位置;

这解决了我的问题。。但如果你想在应用程序关闭后存储价值,你可以使用共享偏好。

SharedPreferences中保存一个标志。

如果打开对话框,请检查该标志并相应地设置选择。

如果进行了选择,请更新标志。

相关内容

  • 没有找到相关文章

最新更新