tvos:UITextView焦点外观像电影App

时间:2015-12-08 14:50:36

标签: uilabel uitextview tvos uiappearance

我正在构建一个tvos应用程序,我希望UITextView的行为与tvos电影应用程序类似。我对专注的外表特别感兴趣。请看看这两张照片。Normal Image

Focused TextView

目前我只是在聚焦时为textview添加背景颜色,但是如何在附加图像中实现这种聚焦外观。这是我的小代码

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)
        }
    }

此外,如果有更多文字,有人可以建议我如何在textView中实现此 MORE 功能。我也读过这个问题Make UILabel focusable and tappable (tvOS),但这对我来说不起作用。

1 个答案:

答案 0 :(得分:0)

" MORE"只有当描述不适合可用的空间时,才会显示文本。您应该能够使用UIKit的-[NSAttributedString boundingRectWithSize:options:context:]方法测量文本所需的空间量。