我已经在这个问题上工作了很长时间。 如果选中CheckBox,我想显示一个Button。我的数据库中有多少列的CheckBoxes。如果取消选中复选框,我想隐藏此按钮。 我在这个论坛中看到了这种方式,但它在我的程序中没有用。
btn.setVisibility(View.GONE);
btn.setVisibility(View.VISIBLE);
我的节目显示:
private void AddColum(int count) {
final LinearLayout ll = (LinearLayout)findViewById(R.id.ListLayout);
for(int i=1; i<=count; i++) {
final int id_ = createCheckBox(i, ll);
CheckBox checkbox = (CheckBox) findViewById(id_);
final IsCheck check = new IsCheck();
checkbox.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
Button open = createButton(id_,ll);
if (check.getCheck()) {
open.setVisibility(View.VISIBLE);
open.setText("Ac");
open.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
Intent myIntent = new Intent(ListActivity.this, ShowActivity.class);
myIntent.putExtra("ID", id_);
ListActivity.this.startActivity(myIntent);
}
});
check.setCheck(false);
} else {
open.setVisibility(View.GONE);
check.setCheck(true);
}
}
});
}
}
答案 0 :(得分:1)
对于Check复选框检查和取消选中状态,您应该使用:
CheckBox check = findViewById(R.id.sprint_checkbox);
check.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
btn.setVisibility(View.VISIBLE);
}else{
btn.setVisibility(View.GONE);
}
}
});