您的位置:首页 > 其它

AlertDialog使用详解

2016-04-20 10:59 387 查看
AlertDialog使用详解

普通的对话框

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();
}
});


效果图如下:



单选对话框

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();

}
});


效果图如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: