Android单选对话框和多选对话框

 main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center_horizontal"
    android:orientation="vertical"
    >

    <Button
        android:id="@+id/singleChoiceButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/singleChoice"
        android:layout_marginTop="100dip"
        android:textSize="20sp"
     />

    <Button
        android:id="@+id/multiChoiceButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/multiChoice"
        android:layout_marginTop="100dip"
        android:textSize="20sp"
     />

</LinearLayout>

 

MainActivity

import android.os.Bundle;
import android.app.Activity;
import android.app.Dialog;
import android.app.AlertDialog.Builder;
import android.content.DialogInterface;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends Activity {
    private Button mSingleChoiceButton;
    private Button mMultiChoiceButton;
    private Dialog mSingleDialog;
    private Dialog mMultiDialog;
    boolean singleFlags[]=null;
    boolean multiFlags[]=null;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		init();
	}
    private void init(){
    	mSingleChoiceButton=(Button) findViewById(R.id.singleChoiceButton);
    	mSingleChoiceButton.setOnClickListener(new ButtonOnClickListenerImpl());
    	mMultiChoiceButton=(Button) findViewById(R.id.multiChoiceButton);
    	mMultiChoiceButton.setOnClickListener(new ButtonOnClickListenerImpl());
    }

	private class ButtonOnClickListenerImpl implements OnClickListener {
		@Override
		public void onClick(View view) {
			switch (view.getId()) {
			case R.id.singleChoiceButton:
				singleFlags=new boolean[]{true,false,false};
                Builder singleBuilder=new Builder(MainActivity.this);
                singleBuilder.setIcon(R.drawable.ic_launcher);
                singleBuilder.setTitle(getResources().getString(R.string.dialog_title));
                singleBuilder.setSingleChoiceItems(R.array.singleChoiceArray, 0, new DialogInterface.OnClickListener() {
					@Override
					public void onClick(DialogInterface dialog, int which) {
						for (int i = 0; i < singleFlags.length; i++) {
							if (i==which) {
								singleFlags[i]=true;
							}else{
								singleFlags[i]=false;
							}
						}
					}
				});
                singleBuilder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
					@Override
					public void onClick(DialogInterface dialog, int which) {
						String result="";
						for (int i = 0; i < singleFlags.length; i++) {
							if (singleFlags[i]==true) {
								result=getResources().getStringArray(R.array.singleChoiceArray)[i];
							}
						}
						 Toast.makeText(MainActivity.this, result, Toast.LENGTH_SHORT).show();
					}
				});

                mSingleDialog=singleBuilder.create();
                mSingleDialog.show();
                break;
			case R.id.multiChoiceButton:
				multiFlags=new boolean[]{true,false,false};
                Builder multiBuilder=new Builder(MainActivity.this);
                multiBuilder.setIcon(R.drawable.ic_launcher);
                multiBuilder.setTitle(getResources().getString(R.string.dialog_title));
                multiBuilder.setMultiChoiceItems(R.array.multiChoiceArray, multiFlags, new DialogInterface.OnMultiChoiceClickListener() {
					@Override
					public void onClick(DialogInterface arg0, int which, boolean isChecked) {
						multiFlags[which]=isChecked;
					}
				});
                multiBuilder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
					@Override
					public void onClick(DialogInterface dialog, int arg1) {
						 String result="";

						 for (int i = 0; i < multiFlags.length; i++) {
							if (multiFlags[i]) {
								result=result+getResources().getStringArray(R.array.multiChoiceArray)[i]+" ";
							}
						}
						 Toast.makeText(MainActivity.this,result, Toast.LENGTH_SHORT).show();
					}
				});

                mMultiDialog=multiBuilder.create();
                mMultiDialog.show();
				break;
			default:
				break;
			}
		}

	}

}

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索android
, android launcher
, android alertdialog
, import
, mainactivity
, button 单选
, result
, setmultichoiceitems
, android二级多选列表
, onclicklistener
, Android多选
Android单选
android 单选多选、android 单选对话框、android 多选对话框、cad不能多选只能单选、recyclerview单选多选,以便于您获取更多的相关知识。

时间: 2024-12-27 14:54:57

Android单选对话框和多选对话框的相关文章

Android中创建对话框(确定取消对话框、单选对话框、多选对话框)实例代码_Android

Android中可以创建三种对话框.确定取消对话框.单选对话框.多选对话框 android中的确定取消对话框演示示例 Android中使用单选对话框的演示案例 android中使用多选对话框的演示案例 实现代码如下 修改activity_main.xml文件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.

Dialog(二)——单选对话框和多选对话框

MainActivity如下: import android.os.Bundle; import android.app.Activity; import android.app.Dialog; import android.app.AlertDialog.Builder; import android.content.DialogInterface; import android.view.View; import android.view.View.OnClickListener; impo

Android使用AlertDialog实现的信息列表单选、多选对话框功能

在使用AlertDialog实现单选和多选对话框时,分别设置setSingleChoiceItems()和setMultiChoiceItems()函数. 下面看主要的代码: 数据源数组: <resources> <!--单选--> <string-array name="arr_weather"> <item >晴</item> <item >多云</item> <item >小雨<

android 多选对话框 默认选中问题

问题描述 多选对话框如何让其出现的时候默认选中某一项 解决方案 多选项目 check.xml<?xml version="1.0" encoding="utf-8"?><resources><string-array name="hobby"><item>篮球</item><item>足球</item><item>排球</item><

【Android开发】消息提示框与对话框-使用AlertDialog创建对话框

AlertDialog类的功能十分强大,它不仅可以生成带按钮的提示对话框,还可以生成带列表的列表对话框,概括起来有一下4种: 1.带确定.中立和取消等N个按钮的提示对话框,其中的按钮个数不是固定的,可以根据需要添加.例如,不需要中立按钮,则可以只生成带有确定和取消按钮的对话框,也可以是只需有一个按钮的对话框. 2.带列表的列表对话框 3.带多个单选列表项和N个按钮的列表对话框 4.带多个多选列表项和N个按钮的列表对话框 在使用AlertDialog类生成对话框时,常用的方法如下所示: setTi

Android 继承DialogFragment弹出dialog对话框

相信现在Android软件开发员,都经常用到这种方式弹出对话框的.Android继承DialogFragment弹出dialog对话框,这样弹出有很多可以灵活处理地方,想什么启动,什么时候数据接口返回都可以,有自已layout布局,生命周期.下面看看我写demo. 本文代码下载:请点击这里 转载请注明出处: http://blog.csdn.net/qq_16064871 一.MainActivity [java] view plaincopy package com.example.fragm

android中怎么实现一个自定义对话框

问题描述 android中怎么实现一个自定义对话框 android界面中,单击EditText弹出一个时间对话框, 解决方案 1.可以自定义对话框的布局 2.新建一个activity 设置android:theme="@style/mydialog" parent="@android:style/Theme.Dialog" ><br> <item name="android:windowNoTitle">true&l

Android开发必知 九种对话框的实现方法_Android

在开发过程中,与用户交互式免不了会用到对话框以实现更好的用户体验,所以掌握几种对话框的实现方法还是非常有必要的.在看具体实例之前先对AlertDialog做一个简单介绍.AlertDialog是功能最丰富.实践应用最广的对话框,它可以生成各种内容的对话框.但实际上AlertDialog生成的对话框总体可分为以下4个区域:图标区.标题区.内容区.按钮区. 这里总结了九种对话框的实现方法,有需要的朋友可以来学习下了   除了popupwindow实现稍微麻烦一点,其他形似都相对简单,熟悉2便即可 直

Android开发必知 九种对话框的实现方法

在开发过程中,与用户交互式免不了会用到对话框以实现更好的用户体验,所以掌握几种对话框的实现方法还是非常有必要的.在看具体实例之前先对AlertDialog做一个简单介绍.AlertDialog是功能最丰富.实践应用最广的对话框,它可以生成各种内容的对话框.但实际上AlertDialog生成的对话框总体可分为以下4个区域:图标区.标题区.内容区.按钮区. 这里总结了九种对话框的实现方法,有需要的朋友可以来学习下了 除了popupwindow实现稍微麻烦一点,其他形似都相对简单,熟悉2便即可 直接上