ios accessibility ios-ui-automation

ios - ¿Puedo configurar el identificador de accesibilidad en el constructor de interfaces? Xcode4.2



accessibility ios-ui-automation (5)

El identificador de accesibilidad se puede configurar en IB usando los ''Atributos de tiempo de ejecución definidos por el usuario'' de la pestaña Identity Inspector:

Ruta clave: accessibilityIdentifier

Tipo: Cuerda

Valor: texto elegido de accessibilityIdentifier

Por ejemplo, configurar una vista de desplazamiento para tener la ID de accesibilidad ''ScrollView'':

Nota: Esto solo se puede usar en elementos que tienen la propiedad accessibilityIdentifier, lo que significa que heredan de UIView. Además, los errores tipográficos en ''Ruta de acceso clave'' probablemente causarán una excepción cuando se cargue el elemento, no creo que se produzca una advertencia / error de compilación.

Solo puedo establecer la etiqueta de accesibilidad en el generador de interfaces, pero en Automatización de la interfaz de usuario, necesito el Identificador de accesibilidad para obtener los elementos de la interfaz de usuario. ¿Alguna forma de hacer esto?


En Xcode 7.1 (ios 9.0) puedes hacerlo lo más simple posible. Por favor encuentre la imagen adjunta.

Simplemente puede acceder a él como view.accessibilityIdentifier


Me preguntaba, ¿quieres probar cosas de xib que no tienen IBOutlet? ¿Puede alguien con más experiencia compartir sus pensamientos?

Aquí está mi opinión sobre el tema. Si no asigna IBOutlet a un botón / etiqueta / texBox o lo que sea, esto significa que no lo cambiará del código. El control será estático y se puede ver en el constructor de Interfaz. Si agrega un IBOutlet a un control, puede agregar un identificador de acceso desde el código.


Segun esta pagina

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

UIAutomation usará la accessibilityLabel si no está configurado accessibilityIdentifier, por lo que puede usar eso en su lugar por ahora. Sin embargo, es probable que esta no sea la mejor práctica, ya que el accessibilityLabel es visible (o más bien audible ) para el usuario si está utilizando VoiceOver, pero está bien siempre y cuando le dé nombres a las etiquetas que sean significativos para los humanos.

Es de esperar que Apple agregue una forma de establecer el ID de accesibilidad en IB en el futuro, pero por ahora tendrá que configurarlo en código, o usar otra cosa, como la etiqueta de vista, para apuntar las vistas para automatización.