• Android中常用Dialog的使用


    目录

    1.AlertDialog - 简单对话框

    2.AlertDialog - 列表对话框

    3.单选列表对话框

    4.AlertDialog - 多选列表对话框

    5.AlertDialog - 半自定义对话框

    6.AlertDialog - 全自定义对话框

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

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

    9.DatePickerDialog - 日期选择弹出框

    10.TimePickerDialog - 时间选择弹出框


    1.AlertDialog - 简单对话框

    1. //简单对话框
    2. AlertDialog alertDialog=new AlertDialog.Builder(context)
    3. .setIcon(R.drawable.~)
    4. .setTitle("标题")
    5. .setMessage("信息")
    6. .setNegativeButton("阴性按钮(左)名称", new DialogInterface.OnClickListener() {
    7. public void onClick(DialogInterface dialogInterface, int i) {
    8. //执行代码
    9. alertDialog.dismiss();//销毁对话框
    10. }
    11. })
    12. .setPositiveButton("阳性按钮(右)名称", new DialogInterface.OnClickListener() {
    13. public void onClick(DialogInterface dialogInterface, int i) {
    14. //执行代码
    15. alertDialog.dismiss();//销毁对话框
    16. }
    17. })
    18. .create();
    19. alertDialog.show();

    2.AlertDialog - 列表对话框

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

    1. //列表对话框
    2. String items[]=new String[]{"item1","item2","...."};
    3. AlertDialog alertDialog=new AlertDialog.Builder(context)
    4. .setIcon(R.drawable.~)
    5. .setTitle("标题")
    6. .setItems(items, new DialogInterface.OnClickListener() {
    7. public void onClick(DialogInterface dialogInterface, int i) {
    8. // i 表示点击的指针,可使用 items[i]
    9. }
    10. })
    11. .setNegativeButton("阴性按钮(左)名称", new DialogInterface.OnClickListener() {
    12. public void onClick(DialogInterface dialogInterface, int i) {
    13. //执行代码
    14. alertDialog.dismiss();//销毁对话框
    15. }
    16. })
    17. .setPositiveButton("阳性按钮(右)名称", new DialogInterface.OnClickListener() {
    18. public void onClick(DialogInterface dialogInterface, int i) {
    19. //执行代码
    20. alertDialog.dismiss();//销毁对话框
    21. }
    22. })
    23. .create();
    24. alertDialog.show();

    3.单选列表对话框

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

    1. //单选列表对话框
    2. String items[]=new String[]{"item1","item2","...."};
    3. AlertDialog alertDialog=new AlertDialog.Builder(context)
    4. .setIcon(R.drawable.~)
    5. .setTitle("标题")
    6. .setSingleChoiceItems(items,0, new DialogInterface.OnClickListener() {
    7. public void onClick(DialogInterface dialogInterface, int i) {
    8. // i 表示点击的指针,可使用 items[i]
    9. }
    10. })
    11. .setNegativeButton("阴性按钮(左)名称", new DialogInterface.OnClickListener() {
    12. public void onClick(DialogInterface dialogInterface, int i) {
    13. //执行代码
    14. alertDialog.dismiss();//销毁对话框
    15. }
    16. })
    17. .setPositiveButton("阳性按钮(右)名称", new DialogInterface.OnClickListener() {
    18. public void onClick(DialogInterface dialogInterface, int i) {
    19. //执行代码
    20. alertDialog.dismiss();//销毁对话框
    21. }
    22. })
    23. .create();
    24. alertDialog.show();

    4.AlertDialog - 多选列表对话框

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

    1. //多选列表对话框
    2. String items[]=new String[]{"item1","item2","...."};
    3. AlertDialog alertDialog=new AlertDialog.Builder(context)
    4. .setIcon(R.drawable.~)
    5. .setTitle("标题")
    6. .setMultiChoiceItems(items, new boolean[]{false, false, ... }, new DialogInterface.OnMultiChoiceClickListener() {
    7. public void onClick(DialogInterface dialogInterface, int i, boolean b) {
    8. // i 表示点击的指针,可使用 items[i]
    9. }
    10. })
    11. .setNegativeButton("阴性按钮(左)名称", new DialogInterface.OnClickListener() {
    12. public void onClick(DialogInterface dialogInterface, int i) {
    13. //执行代码
    14. alertDialog.dismiss();//销毁对话框
    15. }
    16. })
    17. .setPositiveButton("阳性按钮(右)名称", new DialogInterface.OnClickListener() {
    18. public void onClick(DialogInterface dialogInterface, int i) {
    19. //执行代码
    20. alertDialog.dismiss();//销毁对话框
    21. }
    22. })
    23. .create();
    24. alertDialog.show();

    5.AlertDialog - 半自定义对话框

    注意 .setView( View )

    1. //半自定义对话框
    2. View view = LayoutInflater.from(context).inflate(R.layout.view,null);
    3. AlertDialog alertDialog=new AlertDialog.Builder(context)
    4. .setIcon(R.drawable)
    5. .setTitle("标题")
    6. .setView(view)
    7. .setNegativeButton("阴性按钮(左)名称", new DialogInterface.OnClickListener() {
    8. public void onClick(DialogInterface dialogInterface, int i) {
    9. //执行代码
    10. alertDialog.dismiss();//销毁对话框
    11. }
    12. })
    13. .setPositiveButton("阳性按钮(右)名称", new DialogInterface.OnClickListener() {
    14. public void onClick(DialogInterface dialogInterface, int i) {
    15. //执行代码
    16. alertDialog.dismiss();//销毁对话框
    17. }
    18. })
    19. .create();
    20. alertDialog.show();

    6.AlertDialog - 全自定义对话框

    不常用

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

    1. //圆形进度条对话框
    2. ProgressDialog progressDialog=new ProgressDialog(context);
    3. progressDialog.setMessage("信息");
    4. progressDialog.show();

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

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

    .setMax(100) 设置最大值

    .setProgress(10) 设置当前进度

    1. //圆形进度条对话框
    2. ProgressDialog progressDialog=new ProgressDialog(context);
    3. progressDialog.setMessage("信息");
    4. progressDialog.setProgressStyle( ProgressDialog.STYLE_HORIZONTAL );
    5. progressDialog.setMax(100);
    6. progressDialog.setProgress(10);
    7. progressDialog.show();

    9.DatePickerDialog - 日期选择弹出框

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

    1. DatePickerDialog datePickerDialog=new DatePickerDialog( context );
    2. datePickerDialog.setOnDateSetListener(new DatePickerDialog.OnDateSetListener() {
    3. public void onDateSet(DatePicker datePicker, int i, int i1, int i2) {
    4. //i年 i1月 i2日
    5. //关闭窗体
    6. datePickerDialog.cancel();
    7. }
    8. });
    9. datePickerDialog.show();

    10.TimePickerDialog - 时间选择弹出框

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

    1. TimePickerDialog timePickerDialog=new TimePickerDialog(MainActivity.this, new TimePickerDialog.OnTimeSetListener() {
    2. public void onTimeSet(TimePicker timePicker, int i, int i1) {
    3. }
    4. },0,0,true);
    5. timePickerDialog.show();

  • 相关阅读:
    locust的使用
    ceph对象储存的使用
    以智能化为舵手,引领现代计算机系统架构新航向
    当今微服务盛行之架构师必经之路-领域驱动设计-下
    一幅长文细学Vue(一)——项目开发工具
    模拟退火--学习笔记
    什么时候去检测大数据信用风险比较合适?
    ES6 入门教程 13 Symbol 13.1 概述
    Glide:DecodeJob
    springboot 各种配置的作用
  • 原文地址:https://blog.csdn.net/m0_57150356/article/details/133708814