我有一个带有主标签页活动的Android应用程序,并且在单个标签页内有多个活动。在我的主要活动的onCreate()中,我有一个可运行的内容,它创建了一个列表,而在各个活动中,我都使用了此列表。
在各个活动的onCreate()中,我还具有在列表上运行的Runnable。但是,我需要这些Runnable仅在主选项卡活动的Runnable完成创建列表时才运行,否则我将得到一个空列表。我正在尝试找到一种优雅的方法。现在,在我的主活动的Runnable中,我设置了一个全局布尔变量isDone,在我的个人活动的Runnable中,我正在等待通过while循环设置isDone。这可行,但可能不是最好的方法。
有什么想法吗?
谢谢。
编辑:我正在尝试以下代码,但出现运行时错误:
在我的MainActivity的Runnable中:
mainRunnable = new Runnable() {
public void run() {
try {
generateList();
synchronized(this) {
listDone = true;
notifyAll();
}
} catch (Exception e) {
Log.e("BACKGROUND_PROC", e.getMessage());
}
}
};
Thread thread = new Thread(null, mainRunnab