我有一个带有应用程序设置的首选项活动,如果更改了某些首选项,我想刷新活动。
例如,我有一个复选框,它负责在我的布局中添加选项卡,当复选框被选中时,必须显示选项卡。为了捕获此事件,我使用了onSharedPreferenceChangeListener。但是这个监听器监听这个复选框上的每一次点击,每次点击都做一些事情(你的逻辑),即使设置真的没有改变。我想刷新我的活动,只有当设置真的改变。如果之前是“关”,现在变成“开”,在这种情况下,我想刷新,但如果我改变关-开-关,我不想刷新。
如何捕捉真正的变化以及如何在活动中处理这些变化?
谢谢!

最佳答案

如何捕捉真正的变化以及如何在活动中处理这些变化?
步骤1:对你的主要活动实施OnSharedPreferenceChangeListener
步骤2:维护一个boolean数据成员,最初为false,只要更改了您感兴趣的复选框,就可以切换它。
步骤3:在onStart()onResume()中,如果boolean数据成员是true,则刷新活动并将数据成员设置为false

10-07 19:34
查看更多