我正在为安卓编码一个时钟。为此,我设置了一个每秒更新屏幕 1 次的函数,因此我的程序可以消耗大量资源,我的目标是添加一个复选框首选项,尽可能消耗更少的资源。
然后,我的问题是:我已经看到了一些使用 onSharedPreferenceChangeListener
更新首选项的方法,例如......哪种方式消耗更少的系统资源?我应该如何实现它到我的代码中?
如果您使用的是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;
}