onpreferenceclicklistener

onpreferenceclicklistener

我试图在OnPreferenceClickListener上实现PrefernceFragment,似乎从未调用过onPreferenceClick()
我还有另一个实现PrefernceFragmentOnSharedPreferenceChangeListener,它工作得很好。
这是操作系统的错误吗? OnPreferenceClickListener是否不应该支持PrefernceFragment
如果在阅读时无需将片段注册为侦听器,那么我真的认为我的代码是正确的。

    public class myClass extends PreferenceFragment implements OnPreferenceClickListener {

    @Override
    public void onCreate(final Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(com.XX.ZZ.R.xml.YY);
    }

    @Override
    public boolean onPreferenceClick(Preference preference) {
        // never called.
    }
}

最佳答案

PreferenceFragment没有onPreferenceClick()方法。确实不需要监听点击事件,因为Android片段负责将首选项值写入内存。如果您确实需要监视单击事件,则可以使用findPreference(CharSequence key)查找要监视的每个Preference,然后在其上调用setOnPreferenceClickListener(this)

10-05 22:18