从Android Preference内部管理线程

时间:2013-07-13 15:36:29

标签: android android-preferences

这应该有一个简单的答案,但我还没弄清楚它是什么。

我有一个Preference子类会产生一个新的Thread,只要Preference可见就需要运行。 Thread运行Looper,因此我可以通过Looper.quit()发出信号退出。

问题是,Preference课程应该在哪里拨打Looper.quit()

我已尝试覆盖onPrepareForRemoval(),但似乎没有调用此函数。我不想让我的PreferenceActivity子类对这个Preference有特殊的了解;我希望Preference是自包含的。

1 个答案:

答案 0 :(得分:0)

根据您的描述,使用broadcast或preferenceChangeListener实现此功能更简单,更清晰。

发送广播很简单,只需使用自定义操作发送意图即可。在首选项中为该操作注册接收者,你会没事的。

它也与代码的其余部分分离。