2011-06-16 56 views
1

我有一個iPad應用程序,我正在編寫一個UIAutomation腳本。有一個UIButton在點擊時顯示一個UIPopoverController。我的腳本如何選擇(點擊)該彈出框內的項目?UIAutomation:如何訪問UIPopoverController?

編輯: UIAPopover不是它出現在mainWindow上的UIButton的子元素。所以mainWindow.popover()給了我。 logElementTree()函數適用於調試和查找元素。

回答

3
UIALogger.logMessage("tap state"); 
var state = buttons[0]; 
state.tap(); 

UIALogger.logMessage("wait for State Popover Screen to display"); 
target.delay(1); 

UIALogger.logMessage("scroll to District of Columbia"); 
window.popover().tableViews()[0].scrollToElementWithName("District of Columbia"); 

UIALogger.logMessage("select District of Columbia"); 
var dc = window.popover().tableViews()[0].cells()["District of Columbia"]; 
dc.tap(); 
+0

點擊彈出窗口中的條目後,不再可以點擊按鈕。根本不再反應。當我拿出用於彈出popover的代碼時,這些按鈕就起作用了。 Instruments 4.0中的錯誤(使用Xcode 4.0.2)? – MacMark 2011-06-23 07:36:07

+0

mainWindow.popover.dismiss()幫助 – MacMark 2011-08-25 11:30:48

+0

target.delay(1);沒有必要,因爲默認超時時間已經是5秒。 – MacMark 2011-08-25 11:31:42