Android中常用对话框、弹出框、Dialog的使用

Android中常用对话框、弹出框、Dialog的使用

目录

1.AlertDialog - 简单对话框

2.AlertDialog - 列表对话框

3.AlertDialog - 单选列表对话框

4.AlertDialog - 多选列表对话框

5.AlertDialog - 半自定义对话框

6.AlertDialog - 全自定义对话框

7.ProgressDialog - 圆形进度条对话框

8.ProgressDialog - 条形进度条对话框

9.DatePickerDialog - 日期选择弹出框

10.TimePickerDialog - 时间选择弹出框

1.AlertDialog - 简单对话框

//简单对话框

AlertDialog alertDialog=new AlertDialog.Builder(context)

.setIcon(R.drawable.~)

.setTitle("标题")

.setMessage("信息")

.setNegativeButton("阴性按钮(左)名称", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialogInterface, int i) {

//执行代码

alertDialog.dismiss();//销毁对话框

}

})

.setPositiveButton("阳性按钮(右)名称", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialogInterface, int i) {

//执行代码

alertDialog.dismiss();//销毁对话框

}

})

.create();

alertDialog.show();

2.AlertDialog - 列表对话框

注意 .setItems(列表项,监听器)

//列表对话框

String items[]=new String[]{"item1","item2","...."};

AlertDialog alertDialog=new AlertDialog.Builder(context)

.setIcon(R.drawable.~)

.setTitle("标题")

.setItems(items, new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialogInterface, int i) {

// i 表示点击的指针,可使用 items[i]

}

})

.setNegativeButton("阴性按钮(左)名称", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialogInterface, int i) {

//执行代码

alertDialog.dismiss();//销毁对话框

}

})

.setPositiveButton("阳性按钮(右)名称", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialogInterface, int i) {

//执行代码

alertDialog.dismiss();//销毁对话框

}

})

.create();

alertDialog.show();

3.AlertDialog - 单选列表对话框

注意 .setSingleChoiceItems(列表项,选中的列表项的指针,监听器)

//单选列表对话框

String items[]=new String[]{"item1","item2","...."};

AlertDialog alertDialog=new AlertDialog.Builder(context)

.setIcon(R.drawable.~)

.setTitle("标题")

.setSingleChoiceItems(items,0, new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialogInterface, int i) {

// i 表示点击的指针,可使用 items[i]

}

})

.setNegativeButton("阴性按钮(左)名称", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialogInterface, int i) {

//执行代码

alertDialog.dismiss();//销毁对话框

}

})

.setPositiveButton("阳性按钮(右)名称", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialogInterface, int i) {

//执行代码

alertDialog.dismiss();//销毁对话框

}

})

.create();

alertDialog.show();

4.AlertDialog - 多选列表对话框

注意 .setMultiChoiceItems(列表项,列表项是否选中的数组,监听器)

//多选列表对话框

String items[]=new String[]{"item1","item2","...."};

AlertDialog alertDialog=new AlertDialog.Builder(context)

.setIcon(R.drawable.~)

.setTitle("标题")

.setMultiChoiceItems(items, new boolean[]{false, false, ... }, new DialogInterface.OnMultiChoiceClickListener() {

public void onClick(DialogInterface dialogInterface, int i, boolean b) {

// i 表示点击的指针,可使用 items[i]

}

})

.setNegativeButton("阴性按钮(左)名称", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialogInterface, int i) {

//执行代码

alertDialog.dismiss();//销毁对话框

}

})

.setPositiveButton("阳性按钮(右)名称", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialogInterface, int i) {

//执行代码

alertDialog.dismiss();//销毁对话框

}

})

.create();

alertDialog.show();

5.AlertDialog - 半自定义对话框

注意 .setView( View )

//半自定义对话框

View view = LayoutInflater.from(context).inflate(R.layout.view,null);

AlertDialog alertDialog=new AlertDialog.Builder(context)

.setIcon(R.drawable)

.setTitle("标题")

.setView(view)

.setNegativeButton("阴性按钮(左)名称", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialogInterface, int i) {

//执行代码

alertDialog.dismiss();//销毁对话框

}

})

.setPositiveButton("阳性按钮(右)名称", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialogInterface, int i) {

//执行代码

alertDialog.dismiss();//销毁对话框

}

})

.create();

alertDialog.show();

6.AlertDialog - 全自定义对话框

不常用

7.ProgressDialog - 圆形进度条对话框

//圆形进度条对话框

ProgressDialog progressDialog=new ProgressDialog(context);

progressDialog.setMessage("信息");

progressDialog.show();

8.ProgressDialog - 条形进度条对话框

.setProgressStyle( ProgressDialog.STYLE_HORIZONTAL ) 用于设置水平

.setMax(100) 设置最大值

.setProgress(10) 设置当前进度

//圆形进度条对话框

ProgressDialog progressDialog=new ProgressDialog(context);

progressDialog.setMessage("信息");

progressDialog.setProgressStyle( ProgressDialog.STYLE_HORIZONTAL );

progressDialog.setMax(100);

progressDialog.setProgress(10);

progressDialog.show();

9.DatePickerDialog - 日期选择弹出框

DatePickerDialog可以使用.setOnDateSetListener()方法设置选择日期监听器,使用.show()方法弹出窗口,使用.cancel()方法关闭弹出窗口。

DatePickerDialog datePickerDialog=new DatePickerDialog( context );

datePickerDialog.setOnDateSetListener(new DatePickerDialog.OnDateSetListener() {

public void onDateSet(DatePicker datePicker, int i, int i1, int i2) {

//i年 i1月 i2日

//关闭窗体

datePickerDialog.cancel();

}

});

datePickerDialog.show();

10.TimePickerDialog - 时间选择弹出框

TimePickerDialog可以使用构造方法第二个参数OnTimeSetListener()设置选择日期监听器,使用.show()方法弹出窗口,使用.cancel()方法关闭弹出窗口。

TimePickerDialog timePickerDialog=new TimePickerDialog(MainActivity.this, new TimePickerDialog.OnTimeSetListener() {

public void onTimeSet(TimePicker timePicker, int i, int i1) {

}

},0,0,true);

timePickerDialog.show();

相关推荐

如何自测怀的是双胞胎看过来,这几大征兆早已预示答案
微信换绑手机号几天可以换一次 微信换绑手机号时间间隔
牛能看见红色吗?
365bet体育投

牛能看见红色吗?

📅 07-18 👁️ 5902