我有许多片段/组件放在屏幕上,并非所有片段/组件同时显示,其中一些片段/组件正在被不时更换/删除。
我已经创建了一个片段可以实现的刷新机制,以使其数据保持最新。
public class RefreshSingleton {
List<Runnable> tasks;
Handler handler;
private static RefreshSingleton instance = null;
public static RefreshManager getInstance() {
...
}
public Runnable register(int offset, final int interval,final RefresTask task) {
Runnable runnable = new Runnable() {
@Override
public void run() {
task.onRefresh();
handler.postDelayed(this,interval);
}
};
handler.postDelayed(runnable,offset);
tasks.add(runnable);
return runnable;
}
}
我使用处理程序因为刷新涉及UI更改,我正在寻找Runnable的方法来查明它的父片段是否不再在屏幕上并停止迭代。
您对如何实现这一点有什么建议吗?