我正在构建一个tvos应用程序,我希望UITextView的行为与tvos电影应用程序类似。我对专注的外表特别感兴趣。请看看这两张照片。
目前我只是在聚焦时为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),但这对我来说不起作用。
答案 0 :(得分:0)
" MORE"只有当描述不适合可用的空间时,才会显示文本。您应该能够使用UIKit的-[NSAttributedString boundingRectWithSize:options:context:]
方法测量文本所需的空间量。