UIObject2 中 exists() 的替代方法

Posted

技术标签:

【中文标题】UIObject2 中 exists() 的替代方法【英文标题】:Alternative of exists() in UIObject2 【发布时间】:2017-11-28 11:18:54 【问题描述】:

使用UIObject 我们有一个方法: exists() 检查视图是否存在 我正在寻找与 UIObject2 相同的替代方案。

【问题讨论】:

【参考方案1】:

你可以这样做:

import android.support.test.uiautomator.UiDevice; 
import android.support.test.uiautomator.UiObject2;
import android.support.test.InstrumentationRegistry; 


private UiDevice device = UiDevice.getInstance(
    InstrumentationRegistry.getInstrumentation()
);
List<UiObject2> objs = device.findObjects(...)
// Now you can check if objs.size() > 0

【讨论】:

【参考方案2】:

是的! hasObject() 函数

像这样:

 if (!item.hasObject(By.res("com.mkurbanov.degishmeler:id/item_dugs_date")))
                    break;
 if (!item.hasObject(By.res("com.mkurbanov.degishmeler:id/text_like")))
                    break;

【讨论】:

以上是关于UIObject2 中 exists() 的替代方法的主要内容,如果未能解决你的问题,请参考以下文章

sql 查询的正确语法和 WHERE EXISTS 替代方案

Oracle,用left join 替代 exists ,not exists,in , not in,提高效率

SQL Server - Exists 的替代方案(子查询太多)

简析Oracle性能优化可能出现的问题

sql语句原则

sql 优化方法