我编写了一个utils方法,我必须调用Action的run方法。 但是,我必须使用不同的参数重复调用这个util方法。 util方法签名是
clickPullDownMenu(String ViewID, String MenuPath){
Display.getDefault.syncexec(new Runnable(){
public void run(){
//few lines of code
action.run();
}));
}
}
当我提供观看ID'和菜单'被点击。
实施例。
clickPullDownMenu("view_ID", "import");
//check whether the entry is imported.
在我调用保存菜单项后,运行'运行'运行方法。因此,检查数据导入是否完成的代码失败了。
但是,当我调试它时,它成功地工作,因为我在每一步使用步骤。
有没有办法等到run()方法完全完全?我怀疑run()方法可能会调用一些Runnables。
答案 0 :(得分:2)
如果你知道run方法平均需要多长时间,那么你可以等待那个平均值的上限,如果它不是那么长就是安全的那样:
private static int TIME_OUT = 3000; // for 3 seconds
new Handler().postDelayed(new Runnable()
{
@Override
public void run()
{
// do your thing here
finish();
}
}, TIME_OUT);
你可以把它放在你的action.run()调用的地方。