Android之复选框对话框用法实例分析

前端技术 2023/08/31 Android

本文实例讲述了Android之复选框对话框用法。分享给大家供大家参考。具体如下:
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;
 }
}

运行结果:

希望本文所述对大家的Android程序设计有所帮助。

本文地址:https://www.stayed.cn/item/976

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。