0

我正在使用robotium 3.1,我想等待视图消失,有什么方法可以轻松做到这一点吗?我目前的方式涉及一个丑陋的繁忙循环,其中包括让人不开心的睡眠。

To clarify what I'd like to happen:
waitForView(<View>) //The view appears
//The view is visible for a few seconds
waitForViewNotThere(<View>) //waits until the view has disappeared

出现的视图也不包含任何文本等。非常感谢任何输入。

4

3 回答 3

5

这是如何:

final TextView helloWorldText = solo.getText("Hello world!");

    solo.waitForCondition(new Condition() {
        @Override
        public boolean isSatisfied() {
            return helloWorldText.getVisibility() == View.INVISIBLE;
        }
    }, 10000);
于 2014-03-19T16:40:19.930 回答
1

无论你做什么,你都可能会在循环中进行某种睡眠。(如果您查看机器人源,它也使用睡眠)。您可以通过在等待 Ui 线程空闲的仪器上使用 waitforidlesync 方法将它们保持在最低限度。

于 2012-11-01T20:14:20.010 回答
0

如果您想等待视图消失,请使用solo.waitForDialogToClose(long timeout).
参数: timeout - 等待的时间量(以毫秒为单位)。
返回:如果对话框在超时之前关闭,则返回 true;如果未关闭,则返回 false。

于 2012-11-02T08:05:33.753 回答