全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

android AlertDialog多种使用方法详解

当你的应用需要显示一个进度条或需要用户对信息进行确认时,可以使用alertDialog来完成。下面来介绍常用的四种AlertDialog。

1、普通对话框

package com.example.yk.dialogtest; 
 
import android.content.DialogInterface; 
import android.support.v7.app.AlertDialog; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.widget.Toast; 
 
/** 
 * AlertDialog普通对话框 
 */ 
public class GeneralDialogActivity extends AppCompatActivity { 
 
 @Override 
 protected void onCreate(Bundle savedInstanceState) { 
  super.onCreate(savedInstanceState); 
  setContentView(R.layout.activity_general_dialog); 
  AlertDialog.Builder alertDialog = new AlertDialog.Builder(this) 
    .setTitle("操作title")//设置title 
    .setMessage("操作message")//设置要显示的message 
    .setCancelable(false)//表示点击dialog其它部分不能取消(除了“取消”,“确定”按钮) 
    .setPositiveButton("确定", new 
      DialogInterface.OnClickListener() { 
   @Override 
   public void onClick(DialogInterface dialogInterface, int i) { 
    Toast.makeText(GeneralDialogActivity.this, "点击了确定", Toast.LENGTH_SHORT).show(); 
 
   } 
  }).setNegativeButton("取消", new DialogInterface.OnClickListener() { 
   @Override 
   public void onClick(DialogInterface dialogInterface, int i) { 
//    dialogInterface.dismiss(); 
   } 
  }); 
  alertDialog.show();//别忘了show 
 } 
} 

2、单选对话框

package com.example.yk.dialogtest; 
 
import android.content.DialogInterface; 
import android.support.v7.app.AlertDialog; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.widget.Toast; 
 
/** 
 * 单选对话框 
 */ 
public class SingleDialogActivity extends AppCompatActivity { 
 private String[] items={"java","php","c"}; 
 @Override 
 protected void onCreate(Bundle savedInstanceState) { 
  super.onCreate(savedInstanceState); 
  setContentView(R.layout.activity_single_dialog); 
  AlertDialog.Builder alertDialog = new AlertDialog.Builder(this) 
    .setTitle("提示title") 
//    .setMessage("提示message")//在需要设置单选对话框的情况下是不能设置message的,否则单选对话框内容会失效 
    .setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() {//checkedItem=-1表示默认不选中 
     @Override 
     public void onClick(DialogInterface dialogInterface, int i) { 
      Toast.makeText(SingleDialogActivity.this, "选中了"+items[i], Toast.LENGTH_SHORT).show(); 
     } 
    }).setPositiveButton("确定", new DialogInterface.OnClickListener() { 
     @Override 
     public void onClick(DialogInterface dialogInterface, int i) { 
 
     } 
    }); 
   alertDialog.show(); 
 } 
} 

3、多选对话框

package com.example.yk.dialogtest; 
 
import android.content.DialogInterface; 
import android.support.v7.app.AlertDialog; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.widget.Toast; 
 
/** 
 * 多选对话框 
 */ 
public class MultiChoiceDialogActivity extends AppCompatActivity { 
 private String[] items={"java","php","c"}; 
 @Override 
 protected void onCreate(Bundle savedInstanceState) { 
  super.onCreate(savedInstanceState); 
  setContentView(R.layout.activity_multi_choice_dialog); 
  AlertDialog.Builder alertDialog = new AlertDialog.Builder(this) 
    .setTitle("提示title") 
    .setCancelable(false) 
    .setMultiChoiceItems(items, new boolean[]{false, false, false}, new DialogInterface.OnMultiChoiceClickListener() { 
 
 
     @Override 
     public void onClick(DialogInterface dialogInterface, int i, boolean b) { 
      if(b){ 
       Toast.makeText(MultiChoiceDialogActivity.this, "选中了"+items[i], Toast.LENGTH_SHORT) 
         .show(); 
      } 
 
     } 
    }) 
    .setPositiveButton("确定", new DialogInterface.OnClickListener() { 
     @Override 
     public void onClick(DialogInterface dialogInterface, int i) { 
 
     } 
    }); 
  alertDialog.show(); 
 } 
} 

4、进度条对话框

package com.example.yk.dialogtest; 
 
import android.app.ProgressDialog; 
import android.os.Handler; 
import android.os.Message; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
 
/** 
 * 进度条对话框 
 */ 
public class ProgressDialogActivity extends AppCompatActivity { 
 private ProgressDialog progressDialog; 
 
 @Override 
 protected void onCreate(Bundle savedInstanceState) { 
  super.onCreate(savedInstanceState); 
  setContentView(R.layout.activity_progress_dialog); 
  progressDialog = new ProgressDialog(this); 
  progressDialog.setTitle("提示title"); 
  progressDialog.setCancelable(true); 
//  progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);//旋转进度条,默认风格 
  progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//横向进度条 
  progressDialog.show(); 
 
 } 
} 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# android  # AlertDialog  # Android实现点击AlertDialog上按钮时不关闭对话框的方法  # Android修改源码解决Alertdialog触摸对话框边缘消失的问题  # Android入门之AlertDialog用法实例分析  # Android使用自定义alertdialog实现确认退出按钮  # Android中AlertDialog各种对话框的用法实例详解  # Android编程之自定义AlertDialog(退出提示框)用法实例  # Android对话框AlertDialog.Builder使用方法详解  # Android中AlertDialog的六种创建方式  # 简析Android多种AlertDialog对话框效果  # Android中阻止AlertDialog关闭实例代码  # 对话框  # 进度条  # 单选  # 多选  # 可以使用  # 别忘了  # 四种  # 来完成  # 大家多多  # 情况下  # widget  # Bundle  # Toast  # GeneralDialogActivity  # public  # support  # app  # os  # AppCompatActivity  # savedInstanceState 


相关文章: 建站主机空间推荐 高性价比配置与快速部署方案解析  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  建站之星如何取消后台验证码生成?  建设网站制作价格,怎样建立自己的公司网站?  宿州网站制作公司兴策,安徽省低保查询网站?  专业商城网站制作公司有哪些,pi商城官网是哪个?  c# F# 的 MailboxProcessor 和 C# 的 Actor 模型  如何通过cPanel快速搭建网站?  公众号网站制作网页,微信公众号怎么制作?  宝塔建站无法访问?如何排查配置与端口问题?  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  制作网站外包平台,自动化接单网站有哪些?  定制建站价位费用解析与套餐推荐全攻略  *服务器网站为何频现安全漏洞?  建站之星IIS配置教程:代码生成技巧与站点搭建指南  如何在IIS中新建站点并配置端口与物理路径?  在线制作视频的网站有哪些,电脑如何制作视频短片?  如何用狗爹虚拟主机快速搭建网站?  小型网站建站如何选择虚拟主机?  如何基于云服务器快速搭建个人网站?  如何快速搭建FTP站点实现文件共享?  广州建站公司哪家好?十大优质服务商推荐  如何快速选择适合个人网站的云服务器配置?  如何高效搭建专业期货交易平台网站?  建站10G流量真的够用吗?如何应对访问高峰?  无锡营销型网站制作公司,无锡网选车牌流程?  建站之星上传入口如何快速找到?  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  大学网站设计制作软件有哪些,如何将网站制作成自己app?  C#如何使用XPathNavigator高效查询XML  太原网站制作公司有哪些,网约车营运证查询官网?  建站之星与建站宝盒如何选择最佳方案?  建站之星导航如何优化提升用户体验?  金*站制作公司有哪些,金华教育集团官网?  定制建站平台哪家好?企业官网搭建与快速建站方案推荐  如何在橙子建站上传落地页?操作指南详解  如何用PHP快速搭建CMS系统?  如何高效利用200m空间完成建站?  建站之星代理如何获取技术支持?  实惠建站价格推荐:2025年高性价比自助建站套餐解析  如何快速重置建站主机并恢复默认配置?  深圳网站制作培训,深圳哪些招聘网站比较好?  网站制作企业,网站的banner和导航栏是指什么?  网站制作费用多少钱,一个网站的运营,需要哪些费用?  建站主机选购指南:核心配置与性价比推荐解析  如何用5美元大硬盘VPS安全高效搭建个人网站?  如何快速搭建个人网站并优化SEO?  内网网站制作软件,内网的网站如何发布到外网?  三星网站视频制作教程下载,三星w23网页如何全屏?  如何零基础在云服务器搭建WordPress站点? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。