2016-05-05 6 views
0

Preferences XMLのチェックボックスにonClickListenerを設定したいとします。OnPreferenceClickListenerが機能しません

私はonClickListenerを設定したいとき、それは動作しません。 設定アクティビティで、のsetOnPreferenceClickListenerに赤いエラーがあります。

誰か助けてください。おかげ

<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; 
     } 
    }); 
+0

赤エラーが何と言っていfindPreference()を試してみてください? – Vucko

+0

メソッドsetOnPreferenceClickListener(anonymus android.preference.Preference.OnPreferenceClickListener)を解決できません.. –

答えて

1

は+ setOnPreferenceChangeListener()

findPreference("pref_popular").setOnPreferenceChangeListener(new OnPreferenceChangeListener() { 
    @Override 
    public boolean onPreferenceChange(Preference preference, Object newValue) { 
     return true; 
    } 
}); 
+0

ありがとうOleg :) –

関連する問題