gpt4 book ai didi

focus - 动画/缩放 tvOS 中的焦点自定义 View

转载 作者:行者123 更新时间:2023-12-03 20:37:26 28 4
gpt4 key购买 nike

我有一个自定义 UICollectionViewCell在我的 tvOS 应用程序中。它有一个 UIImageView还有一些 UILabel s 在里面。我可以通过实现 UIFocusEnvironment 来使单元格集中。协议(protocol)没有任何问题,但我不知道如何为我的自定义单元格提供焦点外观。 (提升和响应触摸板上的用户移动)。

我知道 UIImageViewadjustsImageWhenAncestorFocused属性,但这只会提升我的单元格中的图像,而不是整个单元格。

有没有办法让 tvOS 将(看似)标准焦点外观/行为应用于我的自定义 View ,还是我必须手动完成所有操作?

提前致谢。

最佳答案

tvOS 12.0+ 中的更新:查看 Apple 在 TVUIKit 中提供的新类(class)!您现在可以制作具有这种聚焦行为的自定义 View !

————

我在 Apple 开发者论坛上问过同样的问题。苹果工作人员回答:

For custom views you'll have to implement the focus appearance yourself. In the focus update method you can do things like apply a transform and use the UIMotionAffect API.

- (void)didUpdateFocusInContext:(UIFocusUpdateContext *)context withAnimationCoordinator:(UIFocusAnimationCoordinator *)coordinator {
if (context.nextFocusedView == self) {
// handle focus appearance changes
}
else {
// handle unfocused appearance changes
}
}


我认为制作 UIView 会很有帮助扩展能够将相同的行为应用于任何自定义 View 。

也许他们希望我们实现更有趣的方式来向用户显示焦点?这是为 UIImageView 轻松启用此功能的一个很好的理由。 (更不用说这种行为还在 UIImageView 上添加了模拟光,这很漂亮,但可能只对图像有意义)。

关于focus - 动画/缩放 tvOS 中的焦点自定义 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32700601/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com