Rom*_*dgz 95 java android android-checkbox
我想把一个听众放在一个CheckBox
.我查找信息,它是这样的:
satView = (CheckBox)findViewById(R.id.sateliteCheckBox);
satView.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
if (isChecked){
// perform logic
}
}
});
Run Code Online (Sandbox Code Playgroud)
问题是Eclipse认为它是一个OnCheckedChangeListener
for a RadioGroup
并且它不起作用.我怎样才能解决这个问题?
Chr*_*ris 238
你可以这样做:
satView.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {
}
}
);
Run Code Online (Sandbox Code Playgroud)
小智 46
你也可以去一个简单的View.OnClickListener
:
satView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(((CompoundButton) view).isChecked()){
System.out.println("Checked");
} else {
System.out.println("Un-Checked");
}
}
});
Run Code Online (Sandbox Code Playgroud)
Hua*_*ang 18
你得到错误,因为你导入了错误的包.你应该 import android.widget.CompoundButton.OnCheckedChangeListener;
所以回调应该是:
box.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
}
});
Run Code Online (Sandbox Code Playgroud)
小智 10
试试这个:
satView = (CheckBox) findViewById(R.id.sateliteCheckBox);
satView.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (buttonView.isChecked()) {
// checked
}
else
{
// not checked
}
}
});
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助.
将 Chris 接受的答案翻译成 Kotlin:
val checkBox: CheckBox = findViewById(R.id.chk)
checkBox.setOnCheckedChangeListener { buttonView, isChecked ->
// Code here
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
187873 次 |
最近记录: |