全网整合营销服务商

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

免费咨询热线: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 


相关文章: C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换  如何通过.red域名打造高辨识度品牌网站?  香港服务器WordPress建站指南:SEO优化与高效部署策略  东莞专业制作网站的公司,东莞大学生网的网址是什么?  北京网站制作网页,网站升级改版需要多久?  怎么将XML数据可视化 D3.js加载XML  全景视频制作网站有哪些,全景图怎么做成网页?  建站主机如何安装配置?新手必看操作指南  高防服务器租用首荐平台,企业级优惠套餐快速部署  外贸公司网站制作哪家好,maersk船公司官网?  制作网站公司那家好,网络公司是做什么的?  如何通过山东自助建站平台快速注册域名?  如何选择服务器才能高效搭建专属网站?  制作表格网站有哪些,线上表格怎么弄?  建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略  详解jQuery停止动画——stop()方法的使用  子杰智能建站系统|零代码开发与AI生成SEO优化指南  如何快速生成凡客建站的专业级图册?  成都网站制作报价公司,成都工业用气开户费用?  建站之星导航菜单设置与功能模块配置全攻略  正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?  如何使用Golang table-driven基准测试_多组数据测量函数效率  小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?  简易网站制作视频教程,使用记事本编写一个简单的网页html文件?  制作网站的软件下载免费,今日头条开宝箱老是需要下载怎么回事?  品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  建站主机无法访问?如何排查域名与服务器问题  企业微网站怎么做,公司网站和公众号有什么区别?  实现虚拟支付需哪些建站技术支撑?  如何在阿里云ECS服务器部署织梦CMS网站?  深圳网站制作的公司有哪些,dido官方网站?  c# Task.ConfigureAwait(true) 在什么场景下是必须的  建站之星如何开启自定义404页面避免用户流失?  建站之星如何助力企业快速打造五合一网站?  如何在自有机房高效搭建专业网站?  详解jQuery中基本的动画方法  攀枝花网站建设,攀枝花营业执照网上怎么年审?  建站之星如何快速生成多端适配网站?  临沂网站制作企业,临沂第三中学官方网站?  如何通过万网虚拟主机快速搭建网站?  c# 在高并发下使用反射发射(Reflection.Emit)的性能  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  免费公司网站制作软件,如何申请免费主页空间做自己的网站?  如何在阿里云完成域名注册与建站?  建站之星如何防范黑客攻击与数据泄露?  *服务器网站为何频现安全漏洞?  北京企业网站设计制作公司,北京铁路集团官方网站?  建站之星24小时客服电话如何获取?  深圳 网站制作,深圳招聘网站哪个比较好一点啊? 

您的项目需求

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