Android---------AlertDialog

警告对话框使用AlertDialog类,可以生成带1个到3个按钮的提示对话框,也可以生成带单选列表或多选列表的列表对话框
使用AlertDialog类只能生成带按钮的提示对话框,如果要生成带列表框的对话框,则需要使用AlertDialog.Builder类。

 View.OnClickListener listener= new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Button btn=(Button)v;
                switch (btn.getId()){
                    case R.id.btn1:
                        //用dialog实现警告对话框
                        AlertDialog dialog=new AlertDialog.Builder(MainActivity.this).create();
                        dialog.setTitle("title");
                        dialog.setMessage("message");
                        dialog.setButton(DialogInterface.BUTTON_POSITIVE, "OK", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                Toast.makeText(MainActivity.this, "clicked", Toast.LENGTH_SHORT).show();
                            }
                        });
                        dialog.show();
                        break;
                    case R.id.btn2:
                        //用builder实现警告对话框
                        AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this);
                        builder.setTitle("title");
                        builder.setMessage("message");
                        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                Toast.makeText(MainActivity.this, "ok", Toast.LENGTH_SHORT).show();
                            }
                        });
                        builder.create().show();
                        break;
                    case R.id.btn3:
                        //列表对话框
                        AlertDialog.Builder builder1=new AlertDialog.Builder(MainActivity.this);
                        builder1.setItems(names, new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                Toast.makeText(MainActivity.this,names[which], Toast.LENGTH_SHORT).show();
                            }
                        });
                        builder1.create().show();
                        break;
                    case R.id.btn4:
                        //单选按钮
                        AlertDialog.Builder builder2=new AlertDialog.Builder(MainActivity.this);
                        builder2.setSingleChoiceItems(names, 0, new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                Toast.makeText(MainActivity.this,names[which], Toast.LENGTH_SHORT).show();
                            }
                        });
                        builder2.create().show();
                        break;
                    case R.id.btn5:
                        //多选按钮
                        AlertDialog.Builder builder3=new AlertDialog.Builder(MainActivity.this);
                        builder3.setMultiChoiceItems(names, new boolean[]{true, false, true, false}, new DialogInterface.OnMultiChoiceClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which, boolean isChecked) {
                                if(isChecked){
                                    Toast.makeText(MainActivity.this, names[which]+"checked", Toast.LENGTH_SHORT).show();
                                }
                                else
                                    Toast.makeText(MainActivity.this, names[which]+"unchecked", Toast.LENGTH_SHORT).show();
                            }
                        });
                        builder3.create().show();
                        break;
                }
            }
        };

猜你喜欢

转载自blog.csdn.net/he1234555/article/details/106789274