ios - UICollectionViewCell 到 tvOS 中的 UIButton 焦点

标签 ios tvos apple-tv

我有一个包含 12-13 个 UICollectionViewCells 的 UICollectionView。我可以轻松地专注于 UICollectionViewCells 并且一切正常。 UICollectionView 外面有一个UIButton。如果我在第一个单元格或第二个单元格上向上滑动,那么我可以轻松地将注意力集中在 UIButton 上。当我在第三个单元格上时,我无法将焦点移动到 UIButton。知道发生了什么事吗?

enter image description here

最佳答案

您应该使用包含您想要聚焦的 UIButton 的 UIFocusGuide。使 UIFocusGuide 与 collectionView 一样宽,并且足够高以覆盖按钮。将 preferredFocusView 设为按钮。

  UIFocusGuide *topButtonFocusGuide = [[UIFocusGuide alloc] init];
  topButtonFocusGuide.preferredFocusedView = myButton;
  [self.view addLayoutGuide:topButtonFocusGuide];

  [self.view addConstraints:@[
    [topButtonFocusGuide.topAnchor constraintEqualToAnchor:myButton.topAnchor],
    [topButtonFocusGuide.bottomAnchor constraintEqualToAnchor:myCollectionView.topAnchor],
    [topButtonFocusGuide.leadingAnchor constraintEqualToAnchor:myCollectionView.leadingAnchor],
    [topButtonFocusGuide.widthAnchor constraintEqualToAnchor:myCollectionView.widthAnchor],
  ]];

关于ios - UICollectionViewCell 到 tvOS 中的 UIButton 焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33240105/

相关文章:

swift - tvOS 唯一设备标识符

javascript - tvOS 中的 Web 应用程序

objective-c - tvOS 如何识别 Objective C 的远程手势?

swift - dateFormatter.dateFromString - 模拟器和 Apple TV 上的不同结果

iOS In App Purchase 沙盒测试说我密码错误

ios - 如何使用 pjsip 2.5.5 或 2.6 在 Ios 中进行视频通话?

android - Facebook Android SDK 4.1+

ios - 将 Obj-C 桥接到 Swift 之后缺少什么

objective-c - 如何使用swift检测tvOS越狱

swift - 如何获取apple tv设置中设置的外观风格?