0

iPhone Simulator と最新の iOS SDK 4.2 を使用して、Instruments で UIAutomation を使用しようとしています。ラベルのないツールバーが 2 つある私のアプリでは、次のようなヘッド ツールバーにしかアクセスできません。

var window = UIATarget.localTarget().frontMostApp().mainWindow();

window.toolbar().buttons()["アップロード"].isVisible();

ラベルの付いていないツールバーのボタン (キャンセル、OK、進む) に isVisible() を使用することはできません (下に私のログが含まれています)。

4) UIAToolbar [名前:(null) 値:(null) NSRect: {{0, 20}, {320, 44}}] 5) UIAButton [name:angle_bracket_left_i 値:(null) NSRect: {{-3, 16 }, {50, 51}}] 5) UIAButton [name:angle_bracket_right_ value:(null) NSRect: {{27, 16}, {50, 51}}] 5) UIATextField [name:(null) value:http: //www.google.com.vn/ NSRect: {{72, 29}, {164, 26}}] 5) UIAButton [名前:アップロード値:(null) NSRect: {{246, 29}, {34, 27}}] 5) UIAButton [名前:Refresh 値:(null) NSRect: {{285, 24}, {28, 33}}] 4) UIAToolbar [名前:(null) 値:(null) NSRect: {{ 0, 436}, {320, 44}}] 5) UIAButton [名前:キャンセル値:(null) NSRect: {{1, 439}, {50, 40}}] 5) UIAButton [名前:OK 値:( null) NSRect: {{132, 430}, {50, 51}}] 5) UIAButton [name:forward value:(null) NSRect: {{263, 430}, {50, 51}}]

4

1 に答える 1

1

2 番目のツールバーのボタンにアクセスするには、いくつかの方法があります。

1) window.toolbars()[1].buttons() を使用して、2 番目のツールバーのボタンの配列を取得します

2) window.buttons()[button_name].isVisible() を使用してボタンに直接アドレス指定します

私の考えでは、Xcode で 2 番目のツールバーのアクセシビリティ ラベルを設定し、それを UI JavaScript で名前で指定するのが最も適切です。2 番目のツールバー名は、VoiceOver を使用して身体障害者がアクセスできるため、さらに優れています。

于 2011-05-13T17:49:45.573 に答える