Android 复选框 怎么设事件监听器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 复选框 怎么设事件监听器相关的知识,希望对你有一定的参考价值。
不好意思,问题问得有点不对,是复选对话框,要求点击确定之后,要更具所选内容跳转
/**
* 创建复选框对话框
*/
@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()
publicvoid 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()
publicvoid onClick(DialogInterface dialog, int which)
);
//创建一个复选框对话框
dialog=builder.create();
break;
return dialog;
参考技术A android没有复选对话框吧,组合起来就还是和多选框一样了,多选框的监听和单选框一样,也是setOnCheckchangeListener(引入包的时候注意别引成RadioButton的),你吧这个选择的状态保存起来,然后点确定的时候根据这个状态来处理就好了。 参考技术B RadioGroup radioGroup = ... ...;
radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener()
public void onCheckedChanged(RadioGroup group, int checkedId)
);
Checkboxes(复选框)
概述
复选框允许用户从一组中选择一个或多个设定好的选项。通常情况下,你应该用一个垂直列表来显示你的复选框。 创建一个复选框,需要在你的布局中创建一个CheckBox
。因为一组复选框允许用户选择多项,每一个复选框都单独管理,你必须为每一个都注册点击监听器。
响应点击事件
当用户选择一个复选框时,CheckBox
对象收到一个on-click 事件。
为复选框定义点击事件处理者,在你的xml布局文件中的
<CheckBox>元素
添加
android:onClick
属性。属性的值必须和处理点击事件的方法名称一致。持有该布局的Activity 必须实现对应的方法。
例如,这里展示了一对复选框对象:
在对应的activity中,下面的方法处理了复选框的点击事件:<?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">
<CheckBox android:id="@+id/checkbox_meat"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/meat"
android:onClick="onCheckboxClicked"/>
<CheckBox android:id="@+id/checkbox_cheese"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/cheese"
android:onClick="onCheckboxClicked"/>
</LinearLayout>
在public void onCheckboxClicked(View view)
// Is the view now checked?
boolean checked = (CheckBox) view).isChecked();
// Check which checkbox was clicked
switch(view.getId())
case R.id.checkbox_meat:
if (checked)
// Put some meat on the sandwich
else
// Remove the meat
break;
case R.id.checkbox_cheese:
if (checked)
// Cheese me
else
// I'm lactose intolerant
break;
// TODO: Veggie sandwich
android:onClick
属性中声明的方法必须和上面展示的名称一致
,特别的,该方法必须:
- 是公共方法(pubic)
- 返回空值(return void)
- 只有一个View作为它的参数(这个View就是被点击的那个)
setChecked(boolean)
或
toggle()
方法。
以上是关于Android 复选框 怎么设事件监听器的主要内容,如果未能解决你的问题,请参考以下文章