如何设置检查默认单选按钮android与警告对话框?

时间:2013-05-30 12:43:02

标签: android button dialog alert radio

任何身体帮助我...... 启动时如何设置带警告对话框的检查默认单选按钮..?

这是我的代码,例如:我希望在项目为“15”的情况下设置单选按钮

public void showDialog()
{
    final CharSequence[] items = {"5", "10", "15","20"};

    AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);

    alertDialogBuilder.setTitle("Set limit article");

    alertDialogBuilder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int item) {
                Toast.makeText(SettingAppDisplay.this, "You selected item No." + item + ": " + items[item], Toast.LENGTH_SHORT).show();

                if (items[item].equals("5")) {
                    //do what you want
                }
                else if (items[item].equals("10")) {
                    //do what you want                                  
                }
                else if (items[item].equals("15")) {
                    //do what you want
                }
                else if (items[item].equals("20")) {
                    //do what you want
                }

                dialog.dismiss();
            }   
    });
    alertDialogBuilder.show();

}

感谢您的参与.. 对不起我的英文:)

3 个答案:

答案 0 :(得分:6)

setSingleChoiceItems中的第二个参数(checkedItem)从-1更改为您要检查的单选按钮位置,此处我将其更改为“1”,以便检查第一个单选按钮。

 alertDialogBuilder.setSingleChoiceItems(items, 1, new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int item) {
                Toast.makeText(SettingAppDisplay.this, "You selected item No." + item + ": " + items[item], Toast.LENGTH_SHORT).show();

                if (items[item].equals("5")) {
                    //do what you want
                }
                else if (items[item].equals("10")) {
                    //do what you want                                  
                }
                else if (items[item].equals("15")) {
                    //do what you want
                }
                else if (items[item].equals("20")) {
                    //do what you want
                }

                dialog.dismiss();
            }   
    });

请参阅docs

setSingleChoiceItems (Cursor cursor, int checkedItem, String labelColumn, 
DialogInterface.OnClickListener listener)

<强>参数

光标 光标从中检索项目。

checkedItem 指定选中的项目。如果-1,则不检查任何项目。

labelColumn 光标上的列名,包含要在标签中显示的字符串。

单击列表中的项目时会通知

侦听器 。单击某个项目时,不会关闭该对话框。只有在点击按钮时才会被解雇,如果没有按钮提供,则由用户解除对话框。

答案 1 :(得分:0)

请检查以下android.app.AlertDialog.Builder.setSingleChoiceItems(CharSequence[] items, int checkedItem, OnClickListener listener) 将items位置的整数值作为第二个参数checkedItem。

要将默认值设为第15项,请提供以下内容

alertDialogBuilder.setSingleChoiceItems(items, 14, new DialogInterface.OnClickListener()

答案 2 :(得分:0)

deafault checked项目由setSingleChoiceItems

中的中间参数设置
alertDialogBuilder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() {

在您的代码中,您将其设置为-1,这意味着默认情况下不会选择任何项目。只需将值更改为数组中要选择的值即可。请记住,从第一个开始为0,然后计算您想要选择的项目。