AlertDialog使用详解

来源:互联网 发布:C语言最短路径算法 编辑:程序博客网 时间:2024/06/06 07:41

AlertDialog使用详解

  1. 普通的对话框
final Builder builder = new AlertDialog.Builder(this);btn.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                builder.setIcon(R.drawable.ic_launcher);                builder.setTitle("普通对话框");                builder.setMessage("这里是Message");                builder.setPositiveButton("OK", new OnClickListener() {                    public void onClick(DialogInterface dialog, int which) {                        Toast.makeText(MainActivity.this, "点击OK", Toast.LENGTH_LONG).show();                    }                });                builder.setNegativeButton("Cancel", new OnClickListener() {                    public void onClick(DialogInterface dialog, int which) {                        Toast.makeText(MainActivity.this, "点击Cancel", Toast.LENGTH_LONG).show();                    }                });                builder.create().show();            }        });

效果图如下:
这里写图片描述

  1. 单选对话框
 final Builder builder = new AlertDialog.Builder(this);btn.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                builder.setIcon(R.drawable.ic_launcher);                builder.setTitle("单选对话框");                  builder.setSingleChoiceItems(new String[]{"红色","黄色","蓝色"},0,//默认选中第一个                 null);                builder.create().show();            }        });

效果图如下:
这里写图片描述

3 多选对话框

 final Builder builder = new AlertDialog.Builder(this);boolean[] b = new boolean[]{true, true, false};//初始化选中状态btn.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                builder.setIcon(R.drawable.ic_launcher);                builder.setTitle("多选对话框");                          // 多选                builder.setMultiChoiceItems(new String[]{"红色", "黄色", "蓝色"}, b, new OnMultiChoiceClickListener() {                    public void onClick(DialogInterface dialog, int which, boolean isChecked) {                        Toast.makeText(getApplicationContext(), "" + b[0] + b[1] + b[2], 1000).show();                    }                });                builder.create().show();            }        });

效果图如下:

这里写图片描述

4.自定义对话框:

 final Builder builder = new AlertDialog.Builder(this);        btn4.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                final RelativeLayout inflate = (RelativeLayout) getLayoutInflater().inflate(R.layout.item, null);                builder.setIcon(R.drawable.ic_launcher);                builder.setTitle("自定义对话框");                builder.setView(inflate);//自定义的布局view                builder.setPositiveButton("OK", new OnClickListener() {                    public void onClick(DialogInterface dialog, int which) {                        EditText usernameET = (EditText) inflate.findViewById(R.id.editText1);                        EditText pwdET = (EditText) inflate.findViewById(R.id.editText2);                        Toast.makeText(                            MainActivity.this,                            usernameET.getText().toString() + ":" + pwdET.getText().toString(),                            Toast.LENGTH_LONG).show();                    }                });                builder.setNegativeButton("Cancel", new OnClickListener() {                    public void onClick(DialogInterface dialog, int which) {                        finish();                    }                });                builder.create().show();            }        });

效果图如下:

这里写图片描述

0 0
原创粉丝点击