¿Cómo hacer que un DIV obtenga el enfoque de Voz en voz alta cuando no contiene ningún HTML enfocable?

Tengo una aplicación de cliente de correo electrónico, y estoy cambiando la forma en que mostramos los files adjuntos para un correo electrónico. Anteriormente los teníamos en la parte superior del visor de correo electrónico en una list desplazable; ahora los estamos moviendo para que se muestren como una list en la parte inferior del contenido del correo electrónico. Por razones relacionadas con el control UIWebView, fue necesario que implementara estos files adjuntos como código HTML que se agrega mediante progtwigción al HTML del correo electrónico original (en lugar de hacerlo como lo haría una persona normal, donde cada file adjunto es solo una vista UIV en iOS).

Ahora estoy tratando de configurar la accesibilidad para estos elementos HTML y me encuentro con algunos problemas. Cada "file adjunto" consiste en un background similar a un button que en realidad está construido a partir de 3 imágenes: una para el lado izquierdo del button, una para el lado derecho del button y una parte intermedia que es estirable (esto permite que el button estirar de ancho sin distorsionar los bordes). También hay una image de clip de papel y una image de flecha derecha en el "button", y dos sub-DIV para mostrar el nombre del file y su tamaño.

El problema es que quiero hacer que el DIV externo que abarca todos estos subelementos sea lo único que se pueda enfocar mediante Voiceover, y quiero poder controlar lo anunciado por Voiceover para este DIV (para que yo puede include el nombre del file, su tamaño, independientemente de si se está descargando actualmente, etc.). Sin embargo, parece que las únicas cosas que Voiceover quiere enfocar son las tres subimágenes que componen el background del button (y se anuncian por sus nombres de file) y los dos sub-DIV que muestran el nombre del file y el tamaño del file. Si aria-hidden="true" todos estos subelementos de Voiceover estableciendo aria-hidden="true" , entonces nada se enfoca en absoluto. Si configuro aria-hidden="false" en el DIV externo, el DIV aún no está enfocado.

¿Hay alguna forma de hacer que un DIV se pueda enfocar mediante Voiceover incluso cuando no contiene ningún contenido HTML interno que Voiceover se centre en sí mismo? Creo que podría hackear una solución donde estiro un PNG completamente transparente sobre el DIV y lo convierta en el único elemento interno con aria-hidden = "false", pero incluso entonces no estoy seguro de cómo hacer que Voiceover lea algo más que el nombre del file

Actualización: OK, parece que puedo lograr esto al agregar role="button" en mi DIV mientras mantengo todos los subelementos aria-hidden="true" . El DIV completo ahora se puede enfocar, pero todavía se anuncia como un "button" (me gustaría que diga "adjunto" en su lugar como el tipo, pero puedo vivir con el "button" si es necesario). El problema principal que ahora estoy encontrando es que Voiceover parece ignorar la propiedad de aria-label , y en su lugar lee cualquier text que está contenido en mis sub-DIV. ¿Hay alguna forma de que pueda get Voiceover para leer la propiedad de aria-label que establecí explícitamente en su lugar?