常见对话框

(1)普通对话框

// 点击按钮 弹出一个普通对话框public void click1(View v) {// 构建AlertDialogAlertDialog.Builder builder = new Builder(this);builder.setTitle("警告");builder.setMessage("世界上最遥远的距离是没有网络");builder.setPositiveButton("确定", new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {System.out.println("点击了确定按钮 执行的逻辑");}});builder.setNegativeButton("取消", new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {System.out.println("点击了取消按钮");}});// 最后一步一定要记得 show出来
        builder.show();}

(2)单选对话框

// 点击按钮 弹出一个单选对话框public void click2(View v) {// 构建AlertDialogAlertDialog.Builder builder = new Builder(this);builder.setTitle("请选择您喜欢的课");final String items[] = { "Android", "ios", "php", "c", "C++", "html" };builder.setSingleChoiceItems(items, -1, new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {// 取出点中的条目String item = items[which];Toast.makeText(getApplicationContext(), item, 1).show();// 关闭当前对话框
                dialog.dismiss();}});// 最后一步一定要记得 show出来
        builder.show();}

(3)多选对话框

// 点击按钮 弹出一个多选对话框public void click3(View v) {// 构建AlertDialogAlertDialog.Builder builder = new Builder(this);builder.setTitle("请选择您喜欢吃的水果");final String items[] = { "榴莲", "苹果", "葡萄", "香蕉", "黄瓜", "火龙果", "荔枝" };final boolean[] checkedItems = { true, false, false, false, false,false, true };builder.setMultiChoiceItems(items, checkedItems,new OnMultiChoiceClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which,boolean isChecked) {}});builder.setPositiveButton("确定", new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {StringBuffer sb = new StringBuffer();// [1]把你选中的水果给取出来for (int i = 0; i < checkedItems.length; i++) {if (checkedItems[i]) {// 就证明是选中的String fruit = items[i];sb.append(fruit + " ");}}Toast.makeText(getApplicationContext(), sb.toString(), 1).show();// 关闭对话框
                dialog.dismiss();}});// 最后一步一定要记得 show出来
        builder.show();}

(4)进度条对话框

//进度条对话框public void click4(View v) {//与进度相关的控件都可以直接在子线程更新ui final ProgressDialog dialog = new ProgressDialog(this);dialog.setTitle("正在玩命加载ing");dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);dialog.show();//设置进度条的最大值 dialog.setMax(100);new Thread(){public void run() {for (int i = 0; i <= 100; i++) {//设置当前的进度 
                SystemClock.sleep(50);//睡眠50毫秒
                dialog.setProgress(i);}//关闭对话框
            dialog.dismiss();};}.start();}

 

补充 2种上下文的区别
this:mainActivity 子类 
getApplicationContext(): 返回Context 父类
对话框不能用getApplicationContext();

转载于:https://www.cnblogs.com/xufengyuan/p/5971120.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/373660.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript学习随记——面向对象编程(继承)

Example:基于原型链的继承 <!DOCTYPE HTML> <html><head><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><title>面向对象编程&#xff08;OOP&#xff09;</title></head> <body>…

NSCharacterSet

先上个例子&#xff1a; NSString * str1 [nameInput.textstringByTrimmingCharactersInSet:[NSCharacterSetwhitespaceAndNewlineCharacterSet]]; NSString * str2 [passwdInput.textstringByTrimmingCharactersInSet:[NSCharacterSetwhitespaceAndNewlineCharacterSet]]; […

Apache Mahout:构建垃圾邮件过滤器服务器

Lucene发生了一些相当有趣的事情。 它最初是作为一个库&#xff0c;然后其开发人员开始基于它添加新项目。 他们开发了另一个开源项目&#xff0c;该项目将向Lucene添加爬网功能&#xff08;以及其他功能&#xff09;。 Nutch实际上是任何人都可以使用或修改的功能齐全的Web Se…

建模步骤_古建设计 | sketchup建模步骤教程(简易入门版)

前言本篇教程主要是针对古建建模入门者。小N给大家分享一套我相对简易的建模步骤。(PS&#xff1a;但是估计有些人可能会感觉我做的东西已经繁琐了……)因为主要是为了让大家熟悉、入门和好记忆。所以讲的东西&#xff0c;小N我会相对简单&#xff0c;有些细节的内容不会更多展…

JavaScript模块化

JavaScript模块化的实现方式&#xff1a; <!DOCTYPE HTML> <html><head><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><title>模块化</title></head> <body><script type&quo…

Linux下面的IO模型

1. Linux下的五种I/O模型 阻塞I/O模型&#xff1a; 一直阻塞 应用程序调用一个IO函数&#xff0c;导致应用程序阻塞&#xff0c;等待数据准备好。 如果数据没有准备好&#xff0c;一直等待….数据准备好了&#xff0c;从内核拷贝到用户空间,IO函数返回成功指示。 我们 第一…

改变导航栏上边的状态栏颜色

#pragma mark - 改变状态栏颜色 -(UIStatusBarStyle)preferredStatusBarStyle{ return UIStatusBarStyleLightContent; }转载于:https://www.cnblogs.com/block123/p/5195203.html

PIT和TestNG突变测试简介

变异测试是一种技术&#xff0c;它可以发现测试未涵盖代码的哪些部分。 它类似于代码覆盖范围 &#xff0c;但变异测试不限于在测试期间执行给定行的事实。 这个想法是修改生产代码&#xff08;引入突变&#xff09;&#xff0c;这应该改变其行为&#xff08;产生不同的结果&am…

JavaScript内存管理——优化内存占用

使用具备垃圾收集机制的语言编写程序&#xff0c;开发人员一般不必操心内存管理的问题。但是&#xff0c;JavaScript在进行内存管理及垃圾收集时面临的问题还是有点与众不同。其中最主要的一个问题&#xff0c;就是分配给Web浏览器的可用内存数量通常要比分配给桌面应用程序的少…

Java 8的烹调方式– Lambda项目

什么是project lambda &#xff1a;Project lambda是用于以Java语言语法启用lambda表达式的项目。 Lambda表达式是功能编程语言&#xff08;如lisp&#xff09;中的主要语法。 Groovy将是支持lambda表达式&#xff08;也称为闭包&#xff09;的java的最接近亲戚。 那么什么是la…

ffmpeg文档38-视频源

38 视频源 下面是当前有效的视频源 buffer 缓冲视频帧&#xff0c;其可以作为滤镜链图的环节 它通常用于编程&#xff0c;特别是通过libavfilter/vsrc_buffer.h的接口。 接受如下参数&#xff1a; video_size 指定视频尺寸&#xff0c;(同时指定width 和 height)。语法同于ffmp…

系统架构的演变 -----自 罗文浩

转自&#xff1a;https://my.oschina.net/lwhmdj0823/blog/617713版权声明&#xff1a;罗文浩所有摘要: 一个成熟的大型网站&#xff08;如淘宝、京东等&#xff09;的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性&#xff0c;它总是随着用户量的增加&#x…

前端请求接口post_前端如何优雅地模拟接口请求?(给你的代码加点小意外)

前言&#xff1a;作为一名前端开发程序猿&#xff0c;每天都被产品经理催着开发&#xff0c;项目一启动&#xff0c;产品就过来了。嘘寒问暖&#xff1a;大胸弟&#xff0c;你啥时开始做啊&#xff1f;一般我们都会直接告诉TA&#xff0c;你先找接口解决数据问题。而我们也会经…

cron表达式详解

Cron表达式是一个字符串&#xff0c;字符串以5或6个空格隔开&#xff0c;分为6或7个域&#xff0c;每一个域代表一个含义&#xff0c;Cron有如下两种语法格式&#xff1a; Seconds Minutes Hours DayofMonth Month DayofWeek Year或 Seconds Minutes Hours DayofMonth Month …

将Ehcache添加到Openxava应用程序

介绍 本文介绍如何在Openxava应用程序上快速启用Ehcache&#xff0c;从而提高性能。 查看实体及其图时&#xff0c;将加载关系。 添加第二级缓存可加快关联元素的检索速度&#xff0c;因为已加载的元素是从缓存而不是数据库中检索的。 最终&#xff0c;该页面解释了分钟项目如…

java mongodb 返回所有field_JAVA高级之反射

更多精彩&#xff0c;请点击上方蓝字关注我们&#xff01;今天跟大家分享JAVA高级之反射的知识。一、什么是反射反射就是把Java类中的各个成分映射成一个个的Java对象。即在运行状态中&#xff0c;对于任意一个类&#xff0c;都能够知道这个类的所以属性和方法&#xff1b;对于…

Linux入门笔记——cal、date、free、clear、history、man、whatis、uname

1、cal 显示日历2、date 显示系统当前的日期和时间3、df查看磁盘剩余空间的数量&#xff0c;常用参数 -h &#xff08;human&#xff09;人性化显示内容4、free显示空闲内存的数量&#xff0c;常用参数 -h &#xff08;human&#xff09;人性化显示内容5、clear清除控制终端显示…

使用ASM 4处理Java类文件–第一部分:世界,您好!

什么是ASM &#xff1a;ASM是一个用于处理Java字节码的开源Java库。 因此&#xff0c;它具有与Apache BCEL相同的目的。 由于本文假定读者具有Java类文件格式的某些知识&#xff0c;因此建议在此处进行阅读。 那么它与BCEL有何不同&#xff1f; 首先&#xff0c;它允许使用事件…

(转)C#程序开发中经常遇到的10条实用的代码

原文地址&#xff1a;http://www.cnblogs.com/JamesLi2015/p/3147986.html 1 读取操作系统和CLR的版本 OperatingSystem os System.Environment.OSVersion; Console.WriteLine(“Platform: {0}”, os.Platform); Console.WriteLine(“Service Pack: {0}”, os.ServicePack); …

Ueditor的配置及使用

Ueditor官网&#xff1a;http://ueditor.baidu.com/website/ &#xff08;项目需要JSP版本&#xff1a;UTF-8版&#xff09; 1.配置 <script type"text/javascript" charset"utf-8">window.UEDITOR_HOME_URL "${ctx}/assets/plugins/uedi…