在main.xml中

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:orientation="vertical" >

<TextView

android:id="@+id/mych"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text=""/>

<Button

android:id="@+id/mybut"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

        android:text="请选择水果"/>

</LinearLayout>

在MyDialogDemo.java程序中

package com.tarena.dialog;

import android.app.Activity;

import android.app.AlertDialog;

import android.app.Dialog;

import android.content.DialogInterface;

import android.os.Bundle;

import android.view.KeyEvent;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.ImageButton;

import android.widget.TextView;

public class MyDialogDemo extends Activity {

private Button mybut = null ; // 定义按钮

private TextView mych = null ; // 定义文本

private TextView mytext = null ; // 定义文本

private String fruitData [] = new String[] { "苹果", "西瓜", "水蜜桃" };

private boolean chData[] = new boolean[]{false,false,false};

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

super.setContentView(R.layout.main); // 调用布局管理器

this.mybut = (Button) super.findViewById(R.id.mybut) ;  // 取得按钮

this.mych = (TextView) super.findViewById(R.id.mych) ;  // 取得文本

this.mybut.setOnClickListener(new OnClickListenerImpl()) ;  // 设置事件类

}

private class OnClickListenerImpl implements OnClickListener {

public void onClick(View view) {

Dialog dialog = new AlertDialog.Builder(MyDialogDemo.this)

.setIcon(R.drawable.ic_launcher)

.setTitle("请选择你喜欢吃的水果?")

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

public void onClick(DialogInterface dialog, int which) {

}

})

.setNegativeButton("取消", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int which) {

}

}).setMultiChoiceItems(MyDialogDemo.this.fruitData,

MyDialogDemo.this.chData, new DialogInterface

.OnMultiChoiceClickListener() {

public void onClick(DialogInterface dialog, int which, boolean isChecked) {

for(int x = 0; x < MyDialogDemo.this.fruitData.length; x++){

if(x == which && isChecked){  //被选中

MyDialogDemo.this.mych.append(MyDialogDemo.this.fruitData[x] + "\n");

}

}

}

}).create() ;

dialog.show() ;

}

}

}

android 多项对话框的更多相关文章

  1. Android 自学之对话框

    Android为我们提供了丰富的对话框支持,提供了四种常用的对话框: AlertDialog:功能丰富.实际应用最广泛的对话框. ProgressDialog:进度对话框,该对话框只用于简单的进度条封 ...

  2. Android中的对话框AlertDialog使用技巧合集-转载

    Android中的对话框AlertDialog使用技巧合集     文章来自:http://blog.csdn.net/blue6626/article/details/6641105   今天我用自 ...

  3. 9.Android之日期对话框DatePicker控件学习

    设置日期对话框在手机经常用到,今天来学习下. 首先设置好布局文件:如图 xml对应代码 <?xml version="1.0" encoding="utf-8&qu ...

  4. Android:AlertDialog对话框

    1.简单的ALertDialog: Dialog alertDialog = new AlertDialog.Builder(this) .setTitle("标题") .setM ...

  5. Android中Dialog对话框

    布局文件xml: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns ...

  6. Android中弹出对话框,AlertDialog关键代码

    写在这里便于以后查看. Android中弹出对话框的关键代码: btn01.setOnClickListener(new OnClickListener() { @Override public vo ...

  7. Android UI系列--对话框(一)(AlertDialog,TimePickerDialog,DatePickerDialog,ProgressDialog)

    一.Dialog介绍 dialog就是一个在屏幕上弹出一个可以让用户做出一个选择,或者输入额外的信息的对话框,一个对话框并不会沾满我们整个的屏幕,并且通常用于模型事件当中需要用户做出一个决定后才会继续 ...

  8. Android开发之对话框高级应用

    Android开发之对话框高级应用 创建并显示一个对话框非常easy.可是假设想进行一些更高级点的操作,就须要一些技巧了.以下将和大家分享一下对话框使用的一些高级技巧. 1.改变对话框的显示位置: 大 ...

  9. android从Dialog对话框中取得文本文字

    android中Dialog对话框获取文本文字,只需要使用editor的getText方法就可以获得,示例如下:final EditText et = new EditText(this); et.s ...

随机推荐

  1. CentOS重启与关机

    Linux centos关机与重启命令详解与实战 Linux centos重启命令: 1.reboot 2.shutdown -r now 立刻重启(root用户使用) 3.shutdown -r 1 ...

  2. 分享动态拼接Expression表达式组件及原理

    前言 LINQ大家都知道,用起来也还不错,但有一个问题,当你用Linq进行搜索的时候,你是这样写的 var query = from user in db.Set<User>()      ...

  3. 原生js实现的放大镜效果

    这是我用原生js写的放大镜效果,与各种各样的框架技术相比,我喜欢使用原生的js,在这里,想和大家一起谈谈原生和框架技术的理解与个人喜好. <!DOCTYPE HTML><html&g ...

  4. QC 2.0为啥可以快充

    根据高通给出的数据,Quick Charge 2.0 A级标准规定的最大充电电流为3A,如果在5V的情况下,充电功率就为15W,因此充电速度要比最高支持10W的Quick Charge 1.0技术更快 ...

  5. 逆波兰表达式 java

    描述  逆波兰表达式是一种把运算符前置的算术表达式,例如普通的表达式2 + 3的逆波兰表示法为+ 2 3.逆波兰表达式的优点是运算符之间不必有优先级关系, 也不必用括号改变运算次序,例如(2 + 3) ...

  6. mongodb安装服务

    一.准备工作 1:下载:  http://www.mongodb.org/downloads 2:解压到ZIP到 D:\Mongodb   ,在此目录下再建立2个目录  D:\Mongodb\db和D ...

  7. phpcms v9联动菜单的调用方法_详解get_linkage函数

    phpcms v9联动菜单调用方法[此为内容页调用方法]: {get_linkage($areaid,1,' >> ',1)} 显示效果: phpcms吧 >> 模板下载 &g ...

  8. JavaScript简易日历

    <!DOCTYPE html PUBLIC "-//W3C//h2D XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. Python自动化运维之8、正则表达式re模块

    re模块 正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串,在文本处理方面功能非常强大,也经常用作爬虫,来爬取特定内容,Python本身不支持正则,但是通过导入re模块,Python ...

  10. 003-C运算符

    运算符 C语言有34种运算符,常见的有加减乘除. 1>算术运算符 1.加 10+2 2.减 20-2 3.乘 12*2 4.除 10/2 5.取余 10%3 = 1; 10%-3 = 1; -1 ...