为了账号安全,请及时绑定邮箱和手机立即绑定

我想在对话框定义一个全选,有人知道怎么做吗

之前用CheckBox用监听事件set实现了全选,这里不知道如何实现

正在回答

5 回答

对话框?dialog吗?你既然用CheckBox实现过,那在dialog中也是一样的啊

0 回复 有任何疑惑可以回复我~
#1

ziom 回复 元素滴3579866 提问者

对话框是不能直接setChecked,但是可以遍历所有CheckBox
2016-08-23 回复 有任何疑惑可以回复我~
#2

ziom 回复 ziom

把你代码贴出来我看看
2016-08-23 回复 有任何疑惑可以回复我~
#3

元素滴3579866 提问者 回复 ziom

贴在下面了,麻烦看看啊
2016-08-23 回复 有任何疑惑可以回复我~
查看1条回复
	findViewById(R.id.bt6).setOnClickListener(new OnClickListener() {
		
		@Override
		public void onClick(View v) {
			AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this);
			//添加布局并加载	
			View view=View.inflate(MainActivity.this, R.layout.dialog_layout2, null);
			builder.setView(view);		
			builder.setTitle("自定义的多选对话框");
			builder.setIcon(R.drawable.ic_launcher);
			final CheckBox cb1=(CheckBox) view.findViewById(R.id.checkBox1);
			final CheckBox cb2=(CheckBox) view.findViewById(R.id.checkBox2);
			final CheckBox cb3=(CheckBox) view.findViewById(R.id.checkBox3);
			cb3.setOnCheckedChangeListener(new OnCheckedChangeListener() {				
				@Override
				public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
					if(isChecked){
						cb1.setChecked(true);
						cb2.setChecked(true);
				}else{
					cb1.setChecked(false);
					cb2.setChecked(false);
				}
				}
			});
			AlertDialog dialog=builder.create();//创造与该builder提供的参数一个警告对话框。
			dialog.show();//显示dialog
		}
	});

布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >
	<CheckBox
	    android:id="@+id/checkBox1"
	    android:layout_width="wrap_content"
	    android:layout_height="wrap_content"
	    android:text="man" />

	<CheckBox
	    android:id="@+id/checkBox2"
	    android:layout_width="wrap_content"
	    android:layout_height="wrap_content"
	    android:text="women" />

	<CheckBox
	    android:id="@+id/checkBox3"
	    android:layout_width="wrap_content"
	    android:layout_height="wrap_content"
	    android:text="all" />

</LinearLayout>


0 回复 有任何疑惑可以回复我~

请问解决了吗?表示没有办法获取到Dialog复选框里面的状态,也没办法获取到他们的boolean值。

0 回复 有任何疑惑可以回复我~
#1

煎蛋的少年

是不是可以自定义View来实行呢?View里面有个isCheck 属性
2016-10-07 回复 有任何疑惑可以回复我~
#2

元素滴3579866 提问者 回复 煎蛋的少年

恩,自定义可以实现,
2016-10-07 回复 有任何疑惑可以回复我~
#3

煎蛋的少年 回复 元素滴3579866 提问者

还存着代码吗,贴出来学习下?麻烦的话就算了~~~
2016-10-07 回复 有任何疑惑可以回复我~
#4

元素滴3579866 提问者 回复 煎蛋的少年

用自定义的dialog实现啊,定义一个布局里面定义checkbox,然后在这里面就可以findVIewById,就可以对他实行监听了,不难的,你试下
2016-10-07 回复 有任何疑惑可以回复我~
#5

煎蛋的少年 回复 元素滴3579866 提问者

好的,谢谢。
2016-10-07 回复 有任何疑惑可以回复我~
#6

元素滴3579866 提问者 回复 煎蛋的少年

代码我写了下,在下面
2016-10-07 回复 有任何疑惑可以回复我~
查看3条回复

http://img1.sycdn.imooc.com//57bc6f9c000173c503580608.jpgjiu

就是想添加这个多选全选的按钮实现功能

0 回复 有任何疑惑可以回复我~
#1

ziom

是想在这些条目下面加个按钮,然后点击按钮就把所有复选框勾选吗
2016-08-24 回复 有任何疑惑可以回复我~
#2

元素滴3579866 提问者 回复 ziom

恩对的
2016-08-24 回复 有任何疑惑可以回复我~
#3

元素滴3579866 提问者 回复 ziom

发过去了
2016-08-24 回复 有任何疑惑可以回复我~
#4

ziom 回复 元素滴3579866 提问者

Roger
2016-08-24 回复 有任何疑惑可以回复我~
查看2条回复
findViewById(R.id.bt3).setOnClickListener(new OnClickListener() {
	
	@Override
	public void onClick(View v) {
		dialog_1();
	}

	private void dialog_1() {
		AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this);
		builder.setTitle("爱好");
		builder.setIcon(R.drawable.ic_launcher);
		builder.setMultiChoiceItems(multi_dialog, null, new OnMultiChoiceClickListener() {
			
			@Override
			public void onClick(DialogInterface dialog, int which, boolean isChecked) {
				if(isChecked){
					Toast.makeText(MainActivity.this, "您喜欢"+multi_dialog[which], Toast.LENGTH_SHORT).show();
				}else{
					Toast.makeText(MainActivity.this, "您不喜欢"+multi_dialog[which], Toast.LENGTH_SHORT).show();
				}
				
			}
		});	
		AlertDialog dialog=builder.create();//创造与该builder提供的参数一个警告对话框。
		dialog.show();//显示dialog
	}
});


0 回复 有任何疑惑可以回复我~
#1

ziom

我没看太明白你的问题,你是要实现甚么需求?
2016-08-23 回复 有任何疑惑可以回复我~
#2

元素滴3579866 提问者 回复 ziom

图我贴在下面了
2016-08-23 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android攻城狮的第二门课(第2季)
  • 参与学习       62378    人
  • 解答问题       217    个

本课程讲带你熟悉Android开发中常用的调试方式,菜单、调试程序

进入课程

我想在对话框定义一个全选,有人知道怎么做吗

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号