更新复选框优先的最佳方法

时间:2012-05-09 14:56:52

标签: android settings sharedpreferences checkboxpreference

我正在为android编写一个时钟。为此,我设置了一个每秒更新屏幕1次的功能,因此我的程序可以消耗大量资源,我的目标是添加一个复选框首选项,尽可能少地消耗资源。

然后,我的问题是:我已经看到了一些用onSharedPreferenceChangeListener更新首选项的方法......例如,哪种方式消耗较少的系统资源?我该如何将其实现到我的代码中?

1 个答案:

答案 0 :(得分:0)

如果您使用的是PreferenceActivity,则可以在OnPreferenceClickListener方法中使用您为该框设置的密钥实现onPreferenceClick复选框上的监听器并执行您需要的操作用它做什么

@Override
public boolean onPreferenceClick(Preference preference) {
    if (preference.getKey().equals("schedulestart")) {
        showDialog(0);
    } else if (preference.getKey().equals("schedulestop")) {
        showDialog(1);
    } else if (preference.getKey().equals("priority")) {
        // Reset unread count when switching mailboxes. They might differ.
        getPreferenceManager().getSharedPreferences().edit().putInt("unreadcount", 0).commit();
    }
    return true;
}