杭州Android培训
达内杭州Android培训中心

18357109557

热门课程

Android中复选框对话框用法

  • 时间:2016-05-10
  • 发布:杭州android中心
  • 来源:达内新闻


  杭州达内Android培训专家介绍了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中Spinner控件之键值对用法
下一篇:原生安卓系统加入哪些功能会更好?

恭喜达内获得《产学合作协同育人项目合作伙伴奖》

迷茫小伙参加达内网络营销培训,获8w年薪入职哈道盟

中传学子参加达内Java培训,转身成为Java工程师月薪12.5K

职场求突破参加达内网络营销培训,获10万年薪成为营销达人

选择城市和中心
贵州省

广西省

海南省