虽然简单,但是每次用还是要百度,记录下吧
转自:点击打开链接
main.xml布局文件
<? xml version = " 1.0 " encoding = " utf-8 " ?> < LinearLayout xmlns:android = " http://schemas.android.com/apk/res/android " android:orientation = " vertical " android:layout_width = " fill_parent " android:layout_height = " fill_parent " > < EditText android:text = "" android:id = " @+id/editText " android:layout_width = " fill_parent " android:layout_height = " wrap_content " android:editable = " false " android:cursorVisible = " false " /> < Button android:text = " 显示复选框对话框 " android:id = " @+id/button " android:layout_width = " fill_parent " android:layout_height = " wrap_content " /> </ LinearLayout >
array.xml数组
<? xml version = " 1.0 " encoding = " utf-8 " ?> < resources > < string - array name = " hobby " > < item > 游泳 </ item > < item > 打篮球 </ item > < item > 登山 </ item > </ string - array > </ resources >
AlertActivity类
package com.ljq.dialog; import android.app.Activity; import android.app.Dialog; import android.app.AlertDialog.Builder; import android.content.DialogInterface; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; public class AlertDialog extends Activity { private EditText editText; private final static int DIALOG = 1 ; boolean [] flags = new boolean []{ false , false , false }; // 初始复选情况 String[] items = null ; @Override public void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.main); items = getResources().getStringArray(R.array.hobby); editText = (EditText)findViewById(R.id.editText); Button button = (Button) findViewById(R.id.button); button.setOnClickListener( new View.OnClickListener() { public void onClick(View v) { // 显示对话框 showDialog(DIALOG); } }); } /** * 创建复选框对话框 */ @Override protected Dialog onCreateDialog( int id) { Dialog dialog = null ; switch (id) { case DIALOG: Builder builder = new android.app.AlertDialog.Builder( this ); // 设置对话框的图标 builder.setIcon(R.drawable.header); // 设置对话框的标题 builder.setTitle( " 复选框对话框 " ); builder.setMultiChoiceItems(R.array.hobby, flags, new DialogInterface.OnMultiChoiceClickListener(){ public void onClick(DialogInterface dialog, int which, boolean isChecked) { flags[which] = isChecked; String result = " 您选择了: " ; for ( int i = 0 ; i < flags.length; i ++ ) { if (flags[i]){ result = result + items[i] + " 、 " ; } } editText.setText(result.substring( 0 , result.length() - 1 )); } }); // 添加一个确定按钮 builder.setPositiveButton( " 确 定 " , new DialogInterface.OnClickListener(){ public void onClick(DialogInterface dialog, int which) { } }); // 创建一个复选框对话框 dialog = builder.create(); break ; } return dialog; } }
运行结果