javascript - UIAutomation 获取 TableView 单元格名称

标签 javascript ios instruments ui-automation ios-ui-automation

我编写了一个简单的脚本,它通过我的应用程序中的菜单。我可以访问每个单元格,但无法检索它们的名称。

这是我的日志树: enter image description here

这些是方法:

function goThroughAllSideMenuCells() {

    for (var index = 0; index < sideMenuCellsCount; index++) {
        var cellName = getNameForCellAtIndex(index);
        UIALogger.logMessage(cellName);
        if (cellName == "Check-in") {
            openCheckInCell();
        } else if (cellName == "Planta") {
            openPlantaCell();
        } else {
            openSideMenuItemWithIdentifier(cellName);
        }
    }
}

function getNameForCellAtIndex(index) {

    return sideMenu.cells()[index].name();
}

最佳答案

试试这个获取名字的功能

function getNameForCellAtIndex(index) {

    return sideMenu.cells()[index].staticTexts()[0].name();
}

我注意到自 Xcode6 以来的一种模式,它改变了一些带有单元格名称的东西,现在它们有时会分解成多个 staticText 元素,所以如果你的单元格有一个像 (item1), (item2) 这样的名字 这现在可能会出现在两个独特的 staticText 项目中。因此,您可能想要编辑该函数以处理获取的不仅仅是第一个静态文本(这是我添加到您的函数中的内容)。

关于javascript - UIAutomation 获取 TableView 单元格名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25978901/

相关文章:

javascript - 我想在提交后立即禁用提交按钮

javascript - 创建一个纪元后 10 毫秒的 Javascript 日期?

javascript - 如何让非 Angular Service Worker 在 Angular 中运行

swift - 电影创建后 AVAssetWriter 内存分配猛增

javascript - 在 JavaScript 中获取正则表达式的重复次数

ios - 如何在 swift 中从另一个 View Controller 重新加载 tableview

ios - dispatch_async 执行的执行(Swift)

ios - 如何在后台创建多个对象?

iphone - iOS 应用程序 UI 自动化测试的最佳资源

ios - 标记生成 : What is VM: Dispatch continuations