Android Studio中AlertDialog的使用方法4-4

可以通过AlertDialog的静态类Builder将对话框设置为单选对话框或者多选对话框,即在对话框中显示单选框或者多选框。

1 设置单选对话框

通过Builder类调用setSingleChoiceItems()方法设置单选对话框,如图1所示。

 图1 setSingleChoiceItems()方法

从图1①,setSingleChoiceItems()方法的第一个参数cities是字符串数组,用来表示每个单选框的内容;第二个参数checkedItem是int类型,表示当显示这些对话框时,默认哪一个单选框被选中,如果checkedItem的值时-1,则表示默认所有的单选框都不会被选中,cities和checkedItem的定义如图2所示。

图2 cities和checkedItem的定义

 setSingleChoiceItems()方法的第三个参数表示单选框的点击监听器,在图1①中可以看出,在此使用new关键字定义了DialogInterface.OnClickListener接口的匿名内部类,当用户点击了对话框中的某个单选框时,就会调用该类的onClick()方法。对于DialogInterface.OnClickListener接口的介绍,请参考《Android Studio中AlertDialog的使用方法4-3》。

Android Studio中AlertDialog的使用方法4-3_hou09tian的博客-CSDN博客

从图②中可以看到,DialogInterface.OnClickListener接口的onClick()方法的第一个参数表示包含单选框的对话框;第二个参数表示哪一个单选框被选中。

单选对话框的效果如图3所示。

图3 单选对话框

 2 设置复选对话框

通过Builder类调用setMultiChoiceItems()方法设置单选对话框,如图4所示。

图4 setMultiChoiceItems()方法

 从图4①中可以看出,setMultiChoiceItems()方法的一个参数表示对话框中每个复选框显示的内容;第二个参数是boolean类型的数组,指定了显示对话框时,默认哪些复选框被选中,cities和ischecked的定义如图5所示。 

图5 cities和ischecked的定义

需要注意的是,ischecked数组中元素的个数必须与cities中元素的个数相同,此时表示“北京”和“重庆”两个复选框默认被选中。

setMultiChoiceItems()方法的第三个参数是DialogInterface.OnMultiChoiceClickListener类的对象,在此使用new关键字创建了一个匿名内部类。当复选框中的某项被选中或者取消选中后,就会调用onClick()方法(图②)。

从图2②中可以看到,onClick()方法的第一个参数表示包含复选框的对话框;第二个参数表示哪个复选框被选中或者取消选中;第三个参数表示是选中还是取消选中,如果是选中,isChecked的值是true,否则是false。

复选框对话框的效果如图6所示。

图6 复选框对话框。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值