/ / Czy mogę ustawić identyfikator dostępności w narzędziu do tworzenia interfejsów? Xcode4.2 - ios, dostępność, automatyzacja ios-ui

czy mogę ustawić identyfikator dostępności w programie budującym interfejs? Xcode4.2 - ios, accessibility, ios-ui-automation

Mogę ustawić Etykietę dostępności tylko w kreatorze interfejsów, ale w Automatyzacji interfejsu użytkownika potrzebuję Identyfikatora dostępności, aby uzyskać elementy interfejsu użytkownika. jakikolwiek sposób to zrobić?

Odpowiedzi:

10 dla odpowiedzi № 1

W Xcode 7.1 (ios 9.0) możesz to zrobić tak prosto, jak to możliwe. Proszę znaleźć obraz w załączeniu.

wprowadź opis obrazu tutaj

Możesz po prostu uzyskać do niego dostęp jako view.accessibilityIdentifier


49 dla odpowiedzi nr 2

AccessibilityIndentifier można ustawić w IB za pomocą zakładki „Identity Inspector” „Zdefiniowane przez użytkownika atrybuty środowiska wykonawczego”:

Kluczowa ścieżka: accessibilityIdentifier

Wpisz: String

Wartość: Wybrany tekst identyfikatora dostępności

Na przykład. ustawianie widoku przewijania w celu uzyskania identyfikatora dostępności „ScrollView”: Zdjęcie z Xcode 8.3.2

Uwaga: Można tego użyć tylko w przypadku elementów, które mają właściwość accessibilityIdentifier, co oznacza, że ​​dziedziczą one z UIView. Również literówki w „Ścieżce klucza” prawdopodobnie spowodują wyjątek, gdy element zostanie załadowany, nie sądzę, aby pojawiło się ostrzeżenie / błąd kompilacji.


5 dla odpowiedzi nr 3

Według tej strony

http://developer.apple.com/library/ios/#documentation/AnalysisTools/Conceptual/WhatsNewInstruments/NewFeatures42/NewFeatures42.html

UIAutomation użyje etykiety dostępności, jeśliaccessibilityIdentifier nie jest ustawiony, więc możesz go użyć na razie. Prawdopodobnie nie jest to najlepsza praktyka, ponieważ etykieta accessibilityLabel jest widoczna (a raczej słyszalny) dla użytkownika, jeśli używa VoiceOver, ale jest w porządku, o ile podasz etykiety, które mają znaczenie dla ludzi.

Mamy nadzieję, że Apple doda sposób ustawienia identyfikatora dostępności w IB w przyszłości, ale na razie będziesz musiał ustawić go w kodzie lub użyć czegoś innego, jak tag widoku, aby kierować widoki na automatyzację.


1 dla odpowiedzi nr 4

accessibilityIdentifier Dotyczy tylko IOS 5.0 lub nowszych .... patrz ....

https://developer.apple.com/library/ios/documentation/uikit/reference/UIAccessibilityIdentification_Protocol/Introduction/Introduction.html


0 dla odpowiedzi № 5

Zastanawiałem się, czy chcesz przetestować z Xib rzeczy, które nie mają IBOutlet? Czy ktoś z większym doświadczeniem może podzielić się swoimi przemyśleniami?

Oto mój pogląd na ten temat. Jeśli nie przypiszesz IBOutlet do przycisku / label / texBox lub cokolwiek to oznacza, że ​​go nie będziesz, nie zmieniaj go z kodu. Sterowanie będzie statyczne i można je zobaczyć w Konstruktorze interfejsów. Jeśli dodasz IBOutlet do kontrolki, możesz dodać acessibilityIdentifier z kodu.