Android 之 Dialog复选框获取值 .

  1. package com.ethan.dialog;  
  2.   
  3. import android.app.Activity;  
  4. import android.app.AlertDialog;  
  5. import android.content.Context;  
  6. import android.content.DialogInterface;  
  7. import android.content.DialogInterface.OnMultiChoiceClickListener;  
  8. import android.os.Bundle;  
  9. import android.view.View;  
  10. import android.widget.Button;  
  11. import android.widget.TextView;  
  12. import android.widget.Toast;  
  13.   
  14. public class TestDialogActivity extends Activity {  
  15.     private Button btn;  
  16.     final Context context = this;    
  17.       
  18.     @Override  
  19.     public void onCreate(Bundle savedInstanceState) {  
  20.         super.onCreate(savedInstanceState);  
  21.         setContentView(R.layout.main);  
  22.           
  23.         btn = (Button) findViewById(R.id.Button01);  
  24.           
  25.         btn.setOnClickListener(new View.OnClickListener() {  
  26.               
  27.             @Override  
  28.             public void onClick(View v) {  
  29.                 showDialog5();  
  30.             }  
  31.         });  
  32.     }  
  33.     public void showDialog5(){    
  34.         //定义复选框选项     
  35.         final String[] multiChoiceItems = {"Item1","Item2"};    
  36.       //复选框默认值:false=未选;true=选中 ,各自对应items[i]   
  37.         final boolean[] defaultSelectedStatus = {false,false};  
  38.           
  39.         final StringBuilder sb = new StringBuilder();  
  40.         //创建对话框     
  41.         new AlertDialog.Builder(context)    
  42.         .setTitle("复选框")//设置对话框标题     
  43.         .setMultiChoiceItems(multiChoiceItems, defaultSelectedStatus, new OnMultiChoiceClickListener(){    
  44.             @Override    
  45.             public void onClick(DialogInterface dialog, int which,    
  46.                     boolean isChecked) {    
  47.                 //来回重复选择取消,得相应去改变item对应的bool值,点击确定时,根据这个bool[],得到选择的内容    
  48.                 defaultSelectedStatus[which] = isChecked;  
  49.             }    
  50.         })  //设置对话框[肯定]按钮     
  51.         .setPositiveButton("确定",new DialogInterface.OnClickListener() {  
  52.               
  53.             @Override  
  54.             public void onClick(DialogInterface dialog, int which) {  
  55.                 for(int i=0;i<defaultSelectedStatus.length;i++) {  
  56.                     if(defaultSelectedStatus[i]) {  
  57.                         sb.append(multiChoiceItems[i]);  
  58.                     }  
  59.                 }  
  60.                 // TODO Auto-generated method stub   
  61.                 Toast.makeText(context,sb.toString(), Toast.LENGTH_LONG).show();    
  62.                   
  63.             }  
  64.         })  
  65.         .setNegativeButton("取消", null)//设置对话框[否定]按钮     
  66.         .show();    
  67.     }    
  68. }  

转载于:https://my.oschina.net/zhougui/blog/74222

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值