2010-10-05 39 views
2

我有隻有一個組件和組件中的5個值的選擇器視圖。UIAutomation中的手柄選擇器

我能得到車輪的值在組件的數量,並且,如下

var picker = window.pickers(); 

UIALogger.logMessage("picker array count: " + picker.length); 

var pickerWheels = picker[0].wheels(); 
var pickerWheelsValues =pickerWheels[0].values(); 

當我登錄時的說法,像 「撿拾器[0] .values()[1]」,它確實顯示第一個項目。

問題是,如何挖掘它?

pickerWheels [0] .values()[1] .tap(); //不工作

有些人可以提供一些輸入,如何點擊拾取輪元件?

我已經嘗試過實現UIPickerViewAccessibilityDelegate和覆蓋 //設置每個組件的可訪問性。

- (NSString *)pickerView:(UIPickerView *)thePickerView accessibilityLabelForComponent:(NSInteger)component{ 
    thePickerView.isAccessibleElement = YES; 
    thePickerView.accessibilityLabel= @"label"; 
    return @"label"; 
} 

回答

1

有上O'Reilly後,顯示與交互採摘(向下滾動到發佈的「zpthacker」的答覆)的一種方式。

基本上它涉及計算在哪裏點擊撿取器使其前後移動。

的樣品需要進行調整了一下,以便關於創建點的工作,例如以下

var tapLoc = new Object(); 
tapLoc.x = origin.x+tapWidth; 
tapLoc.y = tapHeight+origin.y; 
target.tap(tapLoc); 
+0

嗨,此前我已經嘗試過,但是,它會失敗,並顯示以下錯誤消息。 運行腳本時引發異常:ReferenceError:找不到變量:Point var tapLocation = new Point(origin.x + tapWidth,tapHeight + origin.y); <-----我錯過了什麼嗎?請幫助 – Senthil 2010-10-12 11:40:25

+0

是的,我也注意到了。我已經修改了我的答案,所以點應該正確創建(但作爲一個對象) – 2010-10-12 16:31:37

+0

非常感謝克勞斯,它的工作原理。 ! – Senthil 2010-10-13 06:17:07

0

你想測試車輪自來水或只需選擇它特殊的價值?

你們知道特定值的選擇(在選擇器的第一輪),可以使用:

window.pickers()[0].wheels()[0].setValue("another value"); 
+0

jki,我需要這個功能!但是這代碼不起作用!爲什麼?你有沒有工作得很好,或者這只是一個假設? – Stas 2012-11-01 08:35:31

+0

對我來說工作正常(但不是DatePickers,這是一種特殊的拾取器)。 – jki 2012-11-01 18:33:52

+0

在數據選取器上有三個月份,日期和年份的輪子。您需要使用輪子()[0],輪子()[1],輪子()[2]分別選擇值。 – 2015-03-06 17:54:08

1

JKI的答案几乎是正確的,它應該是:

window.pickers()[0].wheels()[0].selectValue("another value");