Accesibilidad (voz en off) con Sprite Kit

Estoy intentando agregar soporte para la accesibilidad de Voice Over en un juego de rompecabezas que tiene un tablero fijo. Sin embargo, tengo problemas para conseguirUIAccessibilityElements para mostrar.

Ahora estoy anulandoaccessibilityElementAtIndex, accessibilityElementCount yindexOfAccessibilityElement en mi SKScene

Están devolviendo una serie de elementos accesibles como tales:

func loadAccessibleElements()
{
    self.isAccessibilityElement = false

    let pieces = getAllPieces()

    accessibleElements.removeAll(keepCapacity: false)
    for piece in pieces
    {
        let element = UIAccessibilityElement(accessibilityContainer: self.usableView!)

        element.accessibilityFrame = piece.getAccessibilityFrame()
        element.accessibilityLabel = piece.getText()
        element.accessibilityTraits = UIAccessibilityTraitButton
        accessibleElements.append(element)
    }
}

Donde pieza es una subclase deSKSpriteNode ygetAccessibilityFrame se define:

func getAccessibilityFrame() -> CGRect
{
    return parentView!.convertRect(frame, toView: nil)
}

En este momento uno (tamaño incorrecto)accessibility El elemento parece aparecer en la pantalla en el lugar equivocado.

¿Podría alguien señalarme en la dirección correcta?

Muchas gracias

EDITAR:
He intentado un trabajo alternativo colocando una UIView sobre el SKView con elementos UIButton en la misma ubicación que los SKSpriteNodes. Sin embargo, la accesibilidad todavía no quiere funcionar. La vista se carga como tal:

func loadAccessibilityView()
{
    view.isAccessibilityElement = false
    view.accessibilityElementsHidden = false
    skView.accessibilityElementsHidden = false
    let accessibleSubview = UIView(frame: view.frame)
    accessibleSubview.userInteractionEnabled = true
    accessibleSubview.isAccessibilityElement = false
    view.addSubview(accessibleSubview)
    view.bringSubviewToFront(accessibleSubview)

    let pieces = (skView.scene! as! GameScene).getAllPieces()
    for piece in pieces
    {
        let pieceButton = UIButton(frame: piece.getAccessibilityFrame())
        pieceButton.isAccessibilityElement = true
        pieceButton.accessibilityElementsHidden = false
        pieceButton.accessibilityTraits = UIAccessibilityTraitButton
        pieceButton.setTitle(piece.getText(), forState: UIControlState.Normal)
        pieceButton.setBackgroundImage(UIImage(named: "blue-button"), forState: UIControlState.Normal)
        pieceButton.alpha = 0.2
        pieceButton.accessibilityLabel = piece.getText()
        pieceButton.accessibilityFrame = pieceButton.frame
        pieceButton.addTarget(self, action: Selector("didTap:"), forControlEvents: UIControlEvents.TouchUpInside)
        accessibleSubview.addSubview(pieceButton)
    }

    UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification, nil)

}

Los botones están colocados correctamente, sin embargo, la accesibilidad simplemente no funciona en absoluto. Algo parece estar evitando que funcione.

Respuestas a la pregunta(2)

Su respuesta a la pregunta