我是靠谱客的博主 直率山水,最近开发中收集的这篇文章主要介绍android 连续调用方法是,android – SwitchPreferences多次调用onPreferenceChange()方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

这是由于SwitchPreference实现中的错误.

调用onPreferenceChange回调:

>第一次通过TwoStatePreference.onClick方法,它只更新SharedPreference.

>第二次通过Switch小部件的切换状态. Here它被调用.

无法评论逻辑,但至少只有在状态发生变化时,框架才应该注意调用onPreferenceChange回调.所以责任在于我们.使用SwitchPreference.isChecked方法检查状态是否已更改.

public boolean onPreferenceChange(Preference preference, Object newValue) {

if(((SwitchPreference) preference).isChecked() != (Boolean) newValue) {

// State got changed

Log.i("Testing", preference.getKey() + " : " + String.valueOf(newValue));

// If you don't want to save the preference change return false from this if block.

}

return true;

}

这是callstack供您参考:

TwoStatePreference.onClick:

MainActivity$SettingsFragment$1.onPreferenceChange(Preference, Object) line: 45

SwitchPreference(Preference).callCh

最后

以上就是直率山水为你收集整理的android 连续调用方法是,android – SwitchPreferences多次调用onPreferenceChange()方法的全部内容,希望文章能够帮你解决android 连续调用方法是,android – SwitchPreferences多次调用onPreferenceChange()方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部