Tengo una vista de pila horizontal con un botón y una etiqueta horizontalmente
Cuando enciendo la voz en off, el texto de estos botones no se lee en absoluto. Todos los demás funcionan bien.
A continuación se muestra cómo configuro mi código. Por favor guíe cómo habilitarlos. No estoy seguro de por qué esto no funciona
Tengo el texto de mi botón y el texto de la etiqueta tomando valores dinámicos
Además, si alguna información sobre por qué se usa el identificador de accesibilidad sería realmente útil. No pude encontrar una explicación clara para esto.
self.myHorizontalStackView.isAccessibilityElement = true //Accessibility for Button self.submitButton.isAccessibilityElement = true self.submitButton.accessibilityTraits = UIAccessibilityTraitStaticText self.submitButton.accessibilityLabel = screenControls.buttonTitle //Accessibility for Label self.addressLabel.isAccessibilityElement = true self.addressLabel.accessibilityTraits = UIAccessibilityTraitStaticText self.addressLabel.accessibilityLabel = screenControls.address1Entonces, parece que el problema proviene de su propio stackView . Vea esta otra pregunta / respuesta de SO sobre el tema:
Si se puede acceder a una vista de contenedor, sus vistas secundarias a menudo se oscurecen para evitar confusiones sobre con qué está tratando de interactuar el usuario.
Entonces aquí, cambia tu primera línea en el fragmento que compartiste a:
self.myHorizontalStackView.isAccessibilityElement = false y eso debería permitir que VoiceOver encuentre las subvistas de stackView .
En cuanto a tu otra pregunta:
Además, si alguna información sobre por qué se usa el identificador de accesibilidad sería realmente útil. No pude encontrar una explicación clara para esto.
Si está preguntando para qué se usaría el identificador, es principalmente para fines de prueba. Al configurar identificadores únicos para sus vistas, sus pruebas pueden usar fácilmente el motor de accesibilidad para encontrar vistas específicas y realizar cualquier acción que desee probar. En términos de VoiceOver, accessibilityIdentifier no tiene ningún rol.