繁体   English   中英

OnPreferenceClickListener:布尔返回值有什么作用?

[英]OnPreferenceClickListener: what does the boolean return value do?

从这个例子:

private static Preference.OnPreferenceClickListener BindToPreferenceClickListener = new Preference.OnPreferenceClickListener() {
    public boolean onPreferenceClick(Preference preference) {
        boolean isHandled = false;
        if (...) {
           isHandled = true;
        }
        return isHandled;
    }
}

“真实”的回报价值是多少? API文档声明该值表示如果“true”处理了点击,但这究竟意味着什么? 我认为这意味着没有调用传递首选项的编辑器,而是可以使用自定义编辑器,但我的实验得出结论,默认编辑器在任一状态下都被调用。

正如OnPreferenceChangeListener.onPreferenceChange方法文档所说:

返回True以使用新值更新“首选项”的状态。

在将新值保存到首选项之前运行该方法。 如果返回false,则不会保留该值。 如果返回true,则会保持不变。

这意味着当有人点击偏好时,您的听众有机会处理点击。

如果您处理点击,则返回true。

如果你没有处理点击,即点击它时你没有做任何事情,你可以返回false,然后系统会将点击传递给正在侦听该偏好点击的下一个侦听器。

我想不出一个例子,你会听到点击然后不处理它抱歉。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM