Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

129
Vistas
UIAccessibility anunciando n de n elementos en vistas personalizadas

Cuando agrega un UISegmentedControl a una vista, UIAccessibility se centrará en él y dirá:

 "(Selected) ItemName Button 1 of 2" "ItemName Button 2 of 2"

Tengo un control personalizado que tiene UIButtons que alternan de forma similar a un UISegmentedControl . Pero lo que estoy tratando de averiguar es cómo hacer que Voice Over anuncie la n of n al final.

Lo más parecido que he encontrado es asignar .accessibilityTraits = .tabBar en el contenedor. El tema es que anuncia:

 "ItemName Button Tab 2 of 2"

Pero para cumplir con nuestras pautas de accesibilidad, no podemos hacer que anuncie "pestaña".

https://developer.apple.com/documentation/uikit/uiaccessibility/uiaccessibilitytraits/1648592-tabbar

Además de escribir una etiqueta de accessibilityLabel personalizada, ¿hay algo dentro de UIAccessibility que pueda manejar esta lógica?

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

  1. Establecer los rasgos de accesibilidad de la vista del contenedor = .tabBar
  2. Establezca los elementos de accesibilidad de la vista del contenedor = [botón1, botón2]
  3. Establezca los rasgos de accesibilidad de cada botón = .selected o .none cuando sea necesario
over 4 years ago · Santiago Trujillo Denunciar

0

Tengo un control personalizado que tiene UIButtons que alternan de forma similar a un UISegmentedControl. Pero lo que estoy tratando de averiguar es cómo hacer que Voice Over anuncie la n de n al final.

  • Coloque cada uno de sus elementos UIButton en la matriz de elementos de accessibilityElements del control personalizado que actúa como un contenedor.
  • Al buscar un elemento específico en esta matriz, tendrá un índice 'x' dentro de una cantidad total 'N' de botones: "botón de nombre de elemento x de N" .
  • En su UIButton , configure la etiqueta de accessibilityLabel insertando el resultado de la investigación anterior.

ingrese la descripción de la imagen aquíAquí hay un tipo de lógica que debería ayudarlo a alcanzar su propósito con un poco de código como el siguiente, por ejemplo (Xcode 10.2.1, Swift 5.0, iOS 12) :

 class ButtonsViewController: UIViewController { @IBOutlet weak var myCustomContainer: UIView! @IBOutlet weak var btn1: UIButton! @IBOutlet weak var btn2: UIButton! @IBOutlet weak var btn3: UIButton! override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) myCustomContainer.accessibilityElements = [btn1!, btn2!, btn3!] let nbButtons = myCustomContainer.accessibilityElements?.count for (index, elt) in (myCustomContainer.accessibilityElements?.enumerated())! { let btn = elt as! UIButton let btnName = btn.titleLabel?.text btn.accessibilityLabel = btnName! + String(index + 1) + " of " + String(describing: nbButtons!) } } }
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda