Reputation: 459
I want to set onClickListener to my Checkboxes in Preferences XML.
When I want to set onClickListener, It does not work. In Settings Activity, there is red error on setOnPreferenceClickListener.
Someone help?. Thanks
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory
android:title="@string/Movie_feed"
android:key="pref_overall"
>
<CheckBoxPreference
android:id="@+id/TopRated"
android:key="pref_rated"
android:summary="@string/Highest_rated"
android:defaultValue="true" />
<CheckBoxPreference
android:id="@+id/TopPopular"
android:key="pref_popular"
android:summary="@string/Most_popular"
android:defaultValue="true" />
</PreferenceCategory>
public class SettingsActivity extends PreferenceActivity {
private CheckBox boxPopular;
private CheckBoxPreference boxTopRated;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
final CheckBox boxPopular = (CheckBox) findViewById(R.id.TopPopular);
boxPopular.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
return false;
}
});
Upvotes: 0
Views: 978
Reputation: 5268
try findPreference()
+ setOnPreferenceChangeListener()
findPreference("pref_popular").setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
return true;
}
});
Upvotes: 2