ios – UIAutomation:在点击之前检查元素是否存在

前端之家收集整理的这篇文章主要介绍了ios – UIAutomation:在点击之前检查元素是否存在前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们有一个iPad应用程序,其中包含一个两列的新闻阅读器.左视图包含一些新闻的列表,其中某些链接直接发布到新闻,有些则将另一个视图控制器与另一个新闻列表.这也将导致将UIButton设置为导航栏的leftBarButtonItem.如果我们处于第一级,那么无法轻拍的简单图像就是leftBarButtonItem.

我的目标是要测试一下水龙头上的每一个消息.如果一个消息导致二级列表,它应该在导航栏中点击UIButton.

如何检查,如果leftBarButtonItem是“tappable”?因为它可以是图像或按钮,只需调用navigationBar().leftButton().tap()将导致错误,如果它是一个图像.

如果没有任何帮助,我也使用了调优库.

解决方法

UIAutomation中的几乎所有元素都可以被挖掘出来.无论是图像,视图还是按钮都不重要.如果您尝试点按的对象无效,您将收到错误.
如何检查:
if ( navigationBar().leftButton().checkIsValid() )
{
     navigationBar().leftButton().tap();
}
else
{
     //do what you need.
}

或者您可以检查您尝试点击的对象是否是一个按钮,例如(不是最好的方法,但它有效):

if ( navigationBar().leftButton().toString() == "[object UIAButton]" )
{
    navigationBar().leftButton().tap();
}
else
{
     //do what you need.
}

checkIsValid()可用于所有UI元素.如果存在对象,则返回true.
如果元素无效或将返回[对象UIAButton]或[对象UIAImage],toString()将返回[object UIAElementNil].

还要尝试使用Apple文档:
http://developer.apple.com/library/ios/#documentation/ToolsLanguages/Reference/UIAElementClassReference/UIAElement/UIAElement.html

猜你在找的iOS相关文章