2015-12-08 12 views
5

Ich baue eine TV-App und ich möchte die UITextView ähnlich wie in TVs Filme App zu verhalten. Ich interessiere mich besonders für den fokussierten Auftritt. Bitte sieh dir diese zwei Bilder an. Normal Imagetvos: UITextView Fokus Aussehen wie Filme App

Focused TextView

Derzeit bin ich gerade das Hinzufügen Hintergrundfarbe der Textview, wenn es fokussiert ist, sondern, wie ich kann diesen fokussierten Auftritt in den beigefügten Bildern erzielen. hier ist mein kleiner Code

override func didUpdateFocusInContext(context: UIFocusUpdateContext, withAnimationCoordinator coordinator: UIFocusAnimationCoordinator) { 
     super.didUpdateFocusInContext(context, withAnimationCoordinator: coordinator) 
     if context.previouslyFocusedView == lessonDescriptionTxt { 

      coordinator.addCoordinatedAnimations({() -> Void in 
       self.lessonDescriptionTxt.layer.backgroundColor = UIColor.clearColor().CGColor 

       }, completion: nil) 
     } 
     if context.nextFocusedView == lessonDescriptionTxt { 

      coordinator.addCoordinatedAnimations({() -> Void in 
       self.lessonDescriptionTxt.layer.backgroundColor = UIColor.blackColor().colorWithAlphaComponent(0.2).CGColor 

       }, completion: nil) 
     } 
    } 

Auch kann, wenn jemand vorschlagen, wie ich diese MEHR Funktion im Textview erreichen kann, wenn es mehr Text. Ich lese auch diese Frage Make UILabel focusable and tappable (tvOS), aber das macht nicht die Arbeit für mich.

Antwort

0

Der Text "MORE" wird nur angezeigt, wenn die Beschreibung nicht in den verfügbaren Platz passt. Sie sollten in der Lage sein, den Platzbedarf für Text zu messen, indem Sie die UIKit-Methode -[NSAttributedString boundingRectWithSize:options:context:] verwenden.

+0

Wie wäre es mit der hüpfenden Erscheinung wenn ausgewählt? – Madu

+0

Diese wichtige https://gist.github.com/Cedrick84/8922a0af730c39c05794 implementiert einen "federnd" Bewegungseffekt. –