这应该有一个简单的答案,但我还没弄清楚它是什么。
我有一个Preference
子类会产生一个新的Thread
,只要Preference
可见就需要运行。 Thread
运行Looper
,因此我可以通过Looper.quit()
发出信号退出。
问题是,Preference
课程应该在哪里拨打Looper.quit()
?
我已尝试覆盖onPrepareForRemoval()
,但似乎没有调用此函数。我不想让我的PreferenceActivity
子类对这个Preference
有特殊的了解;我希望Preference
是自包含的。
答案 0 :(得分:0)
根据您的描述,使用broadcast或preferenceChangeListener实现此功能更简单,更清晰。
发送广播很简单,只需使用自定义操作发送意图即可。在首选项中为该操作注册接收者,你会没事的。
它也与代码的其余部分分离。