Reputation: 3891
I've created my RadioGroup as following:
RadioGroup radioGroup = (RadioGroup)findViewById(R.id.radioGroup1);
Now I wanted to call the onCheckedChangeListener like this:
radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {
public void onCheckedChanged(RadioGroup group, int checkedId) {
}
});
First, eclipse suggests me to write it like this, but when having typed it all out, Eclipse underlines my code like this:
the .setOnCheckedChangeListener is red and tells me follwing:
The method setOnCheckedChangeListener(RadioGroup.OnCheckedChangeListener)
in the type RadioGroup is not applicable for the arguments
(new CompoundButton.OnCheckedChangeListener(){})
Why won't my Listener work properly although eclipse first tells me to do it like this?
Upvotes: 0
Views: 2837
Reputation: 126563
add the import:
import android.widget.RadioGroup.OnCheckedChangeListener;
instead of:
import android.widget.CompoundButton.OnCheckedChangeListener;
and your code will work like a charm :) :
RadioGroup radioGroup = (RadioGroup)findViewById(R.id.radioGroup1);
radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {
public void onCheckedChanged(RadioGroup group, int checkedId) {
}
});
the problem is that you are using:
import android.widget.CompoundButton.OnCheckedChangeListener;
Upvotes: 3
Reputation: 2921
You should use/import RadioGroup.OnCheckedChangeListener
instead of CompoundButton.OnCheckedChangeListener
:
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup radioGroup, int checkedId) {
// TODO
}
});
Upvotes: 0
Reputation: 407
check your "import" section in file top. use
"import android.widget.RadioGroup.OnCheckedChangeListener;"
instead of
"import android.widget.CompoundButton.OnCheckedChangeListener;"
Upvotes: 0