关于setOnCheckedChangeListener的使用
2016-08-21 19:08
357 查看
toggleButton
public class ToggleActivity extends Activity implements CompoundButton.OnCheckedChangeListener {
private ToggleButton tb;
private ImageView img;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.toggle_layout);
tb=(ToggleButton)findViewById(R.id.toggle);
img=(ImageView)findViewById(R.id.image);
//给tb监听
tb.setOnCheckedChangeListener(this);
}
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
/*
buttonView代表被点击控件的本身,isChecked代表状态
*/
img.setBackgroundResource(isChecked? R.drawable.deng1:R.drawable.deng2);
}
}
布局
<ToggleButton
android:checked="false"
android:textOn="open"
android:textOff="close"
android:id="@+id/toggle"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="match_parent" />
CheckBox
复选框,可以有多个,而且在屏幕中选择的时候可以取消
/**
* Checkbox的使用方法
*/
public class TestActivity extends Activity implements CompoundButton.OnCheckedChangeListener {
private CheckBox checkBox;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
checkBox=(CheckBox)findViewById(R.id.basketball);
checkBox.setOnCheckedChangeListener(this);
}
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
//获得文本内容
String text=checkBox.getText().toString();
Log.i("tag",text);
}
}
}
RadioGroup/RadioButton
单选按钮集合和单选按钮,只能在集合中选择一个,且必须有一个
public class RadioGroupActivity extends AppCompatActivity implements RadioGroup.OnCheckedChangeListener {
private RadioGroup rg;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_radio_group);
rg.setOnCheckedChangeListener(this);
}
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId){
case R.id.rd1:
Log.i("tag","man");
break;
case R.id.rd2:
Log.i("tag","female");
break;
}
}
}
public class ToggleActivity extends Activity implements CompoundButton.OnCheckedChangeListener {
private ToggleButton tb;
private ImageView img;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.toggle_layout);
tb=(ToggleButton)findViewById(R.id.toggle);
img=(ImageView)findViewById(R.id.image);
//给tb监听
tb.setOnCheckedChangeListener(this);
}
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
/*
buttonView代表被点击控件的本身,isChecked代表状态
*/
img.setBackgroundResource(isChecked? R.drawable.deng1:R.drawable.deng2);
}
}
布局
<ToggleButton
android:checked="false"
android:textOn="open"
android:textOff="close"
android:id="@+id/toggle"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="match_parent" />
CheckBox
复选框,可以有多个,而且在屏幕中选择的时候可以取消
/**
* Checkbox的使用方法
*/
public class TestActivity extends Activity implements CompoundButton.OnCheckedChangeListener {
private CheckBox checkBox;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
checkBox=(CheckBox)findViewById(R.id.basketball);
checkBox.setOnCheckedChangeListener(this);
}
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
//获得文本内容
String text=checkBox.getText().toString();
Log.i("tag",text);
}
}
}
<CheckBox android:id="@+id/basketball" android:checked="false" android:text="篮球" android:layout_width="wrap_content" android:layout_height="wrap_content" />
RadioGroup/RadioButton
单选按钮集合和单选按钮,只能在集合中选择一个,且必须有一个
public class RadioGroupActivity extends AppCompatActivity implements RadioGroup.OnCheckedChangeListener {
private RadioGroup rg;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_radio_group);
rg.setOnCheckedChangeListener(this);
}
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId){
case R.id.rd1:
Log.i("tag","man");
break;
case R.id.rd2:
Log.i("tag","female");
break;
}
}
}
<RadioGroup android:id="@+id/rg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <RadioButton android:id="@+id/rd1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="man" android:checked="true"/> <RadioButton android:id="@+id/rd2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="female" android:checked="false"/> </RadioGroup>
相关文章推荐
- 关于setOnCheckedChangeListener的…
- 解决RadioButton默认选中时调用setOnCheckedChangeListener的问题
- setOnFocusChangeListener的使用
- setOnFocusChangeListener的使用
- Android开发中CheckBox的setOnClickListener和setOnCheckedChangeListener的不同之处在哪?
- setOnFocusChangeListener的使用
- 如何给checkbox创建setOnCheckedChangeListener()?
- 关于editText.setOnFocusChangeListener不起作用
- Expandablelistview与CheckBox+setOnCheckedChangeListener有坑
- Android开发中CheckBox、setOnClickListener和setOnCheckedChangeListener的不同之处在哪
- setOnCheckedChangeListener为什么执行了两次
- (转)Android 中 CheckBox 的 setOnClickListener 和 setOnCheckedChangeListener 的不同之处在哪?
- The method setOnCheckedChangeListener(RadioGroup.OnCheckedChangeListener)in the type RadioGroupisnot
- Android开发中CheckBox的setOnClickListener和setOnCheckedChangeListener的不同之处在哪?
- CheckBox的OnCheckedChangeListener的调用
- PropertyChangeListener接口使用初探
- 第20章、OnCheckedChangeListener事件(从零开始学Android)
- 使用OnItemClickListener时关于焦点颜色的设置问题
- PropertyChangeListener接口使用初探
- Android中使用AlertDialog,使用函数setButton()出现的关于“new OnClickListener"错误