我执行以下操作:
function extend(destination, source) {
for (var property in source) {
destination[property] = source[property];
}
return destination;
};
extend( UIAElementArray.prototype,
{
each: function(f)
{
for (i = 0; i < this.length; i++)
{
f(i, this[i]);
}
},
findFirst: function(f)
{
for (i = 0; i < this.length; i++)
{
if (f(this[i])) return this[i];
}
return null;
},
findLast: function(f)
{
for (i = this.length - 1; i >= 0; i--)
{
if (f(this[i])) return this[i];
}
return null;
}
} );
但是,当我尝试对从 mainWindow.tableViews()[0].cells() 获得的对象使用“每个”函数时,会发生“[object UIAElementNil] 不是函数”。为什么我添加到 UIAElementArray.prototype 的每个属性都设置为 [object UIAElementNil]?这样的事情发生了,当我在真实设备上运行 UIAutomation 测试时,它在模拟器上工作,令人惊讶。