Android UI学习之Dialog

本节学习Diaolog。在生活中Dialog包括:三种样式(单选对话框,多选对话框,确定取消对话框)

那我们一个一个分析:

确定取消对话框:

 public void click1(View v)
    {
    	AlertDialog.Builder builder = new Builder(MainActivity.this);

    	//设置图标
    	builder.setIcon(android.R.drawable.alert_light_frame);
    	//设置标题
    	builder.setTitle("提示");
    	//设置正文
    	builder.setMessage("是否退出游戏?");
    	//设置确定按钮
    	builder.setPositiveButton("确定", new OnClickListener() {

			@Override
			public void onClick(DialogInterface arg0, int arg1) {
				//确定后回调函数
				Toast.makeText(MainActivity.this, "退出", Toast.LENGTH_SHORT).show();
			}
		});
    	//设置取消按钮
    	builder.setNegativeButton("取消", new OnClickListener(){

			@Override
			public void onClick(DialogInterface arg0, int arg1) {
				//取消后回调函数
				Toast.makeText(MainActivity.this, "取消", Toast.LENGTH_SHORT).show();
			}
		});

    	//显示Dialog
    	AlertDialog dialog = builder.create();
    	dialog.show();
    }

显示效果:

单选对话框:

 public void click2(View v)
    {
    	AlertDialog.Builder builder = new Builder(MainActivity.this);
    	builder.setTitle("请选择性别");

    	final String[] items = new String[]{
    		"男",
    		"女"
    	};

    	//-1代表的意思是: 默认那个都不选中,0代表男,1代表女
    	builder.setSingleChoiceItems(items, 1, new OnClickListener() {

    		//which: 代表是选中那个选项
			@Override
			public void onClick(DialogInterface dialog, int which) {
				Toast.makeText(MainActivity.this, items[which] +"被选中了!" , Toast.LENGTH_SHORT).show();
				dialog.dismiss();
			}
		});

    	builder.show();
    }

显示结果为:

多选对话框:

public void click3(View v)
    {
    	AlertDialog.Builder builder = new Builder(MainActivity.this);
    	builder.setTitle("请选择您喜欢的类型");
    	final String[] items = new String[]{
    			"温柔型",
    			"性感型",
    			"火辣型",
    			"奶妈型",
    			"萝莉型",
    	};

    	//初始值:true代表选中,false代表不选中
    	final boolean[] checkedItems = new boolean[]{
    		true,
    		true,
    		false,
    		true,
    		true,
    	};

    	builder.setMultiChoiceItems(items, checkedItems, new OnMultiChoiceClickListener()
    	{
			//which:用户点击的条目的下标
			//isChecked:用户是选中该条目还是取消该条目
			@Override
			public void onClick(DialogInterface arg0, int which, boolean isChecked) {
				checkedItems[which] = isChecked;
			}
    	});

    	builder.setPositiveButton("确定", new OnClickListener() {

			@Override
			public void onClick(DialogInterface dialog, int which) {

				//封装显示
				String text = "";
				for(int i = 0; i < items.length; i++)
				{
					text += checkedItems[i] ? items[i] + ";" : "";
				}
				Toast.makeText(MainActivity.this, text, Toast.LENGTH_SHORT).show();
				dialog.dismiss();
			}
		});

    	builder.show();
    }

显示效果:

关于Dialog就说到这里

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-04 21:39:21

Android UI学习之Dialog的相关文章

Android UI学习 - ListView (android.R.layout.simple_list_item_1是个什么东西)

Android UI学习 - ListView 2010-06-20 18:21:35 标签:Android UI 移动开发 ListView ListActivity 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://android.blog.51cto.com/268543/336162 ListActivity ListActivity是一个专门显示ListView的Activity类,它内置了ListView对象,只要我

【Android UI设计】Dialog对话框详解(二)

上一篇我们介绍了Dialog的基本使用方法,[Android UI设计]Dialog对话框详解(一)今天继续介绍,废话不多说,今天主要实现ProgressDialog和透明Dialog两种效果,最后介绍一下github上的一个Dialog动画开源库,里面包含多种动画特效,效果图如下: 一.ProgressDialog基本使用 1.ProgressDialog关键代码 mProgressDialog = new ProgressDialog(MainActivity.this); // 圆形pro

Android UI学习之ListView(使用ArrayAdapter和SimpleAdapter)

既然要使用ArrayAdapter,那我们先看看系统中所以的Adapter关系: 在实际中使用频率比较高的有:SimpleAdapter, ArrayAdapter, BaseAdapter BaseAdapter: 是一个抽象类,实现它要实现比较多的方法,但是灵活的高 ArrayAdapter:支持了泛型操作,比较简单,一般只能显示同类型的数据 SimpleAdapter:有比较好的灵活的,可以定义自己的UI 关于BaseAdapter在上一节已经讲过,这里不在举例说明 我们先使用ArrayA

【Android UI设计】Dialog对话框详解(一)

所谓Dialog其实就是一个小窗口,用户在对界面进行某些操作的时候,可以通过Dialog来响应,对用户进行反馈,但是我们一般在使用Dialog的时候是不会直接使用Dialog来进行编码创建对话框,而是使用它的子类来进行操作: AlertDialog 一个对话框-–可以显示一个标题,最多三个按钮,一个可选项列表,或自定义布局. Dialog继承关系图 其他子类不在此处介绍,本篇主要介绍AlertDialog和Android官方推荐使用的DialogFragment这两种方式来创建Dialog. D

Android UI学习之ListView

ListView是手机系统中使用非常广泛的一种组件,它以垂直列表的形式显示所以列表项. 今天我们学习如何将系统的短信显示到listView上. 关于如何获取系统的短信请看: Android 四大组件学习之ContentProvider三 先看一下我们的布局文件: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.andr

jquery ui 学习随笔 dialog对话框

title  buttons  position show  hide autoOpen  Draggable  resizable modal closeText focus  create  open  beforeClose  close resize  resizeStart  resizeStop dialog('action',param) on()

Android UI学习之Gallery

在生活就大家都会在手机上浏览图片,然后会用手指从左到右滑动.其实这样的效果就是借助Gallery实现的. 接下来一一个简单的例子介绍Gallery的使用: public class GalleryActivty extends Activity { private static Gallery mGallery; private int[] images = { R.drawable.a, R.drawable.b, R.drawable.c, R.drawable.d, R.drawable.

Android UI学习 - GridView和ImageView的使用

GridView: A view that shows items in two-dimensional scrolling grid. The items in the grid come from the ListAdapter associated with this view. 简单说,GridView就是我们资源管理器平常见到的一个个文件的icon显示方式. 上面提及到了,GridView的Item是来自ListAdapter的,所以一般在Activity的onCreate使用Gri

【转】Android UI系列-----时间、日期、Toasts和进度条Dialog

原文网址:http://www.cnblogs.com/xiaoluo501395377/p/3421727.html 您可以通过点击 右下角 的按钮 来对文章内容作出评价, 也可以通过左下方的 关注按钮 来关注我的博客的最新动态. 如果文章内容对您有帮助, 不要忘记点击右下角的 推荐按钮 来支持一下哦 如果您对文章内容有任何疑问, 可以通过评论或发邮件的方式联系我: [email protected] / [email protected] 如果需要转载,请注明出处,谢谢!! 本篇随笔将继续学