0

我正在构建一个像照片这样的应用程序,您可以在其中滚动浏览照片的缩略图,UICollectionView您可以点击其中一个以全屏查看该照片。我正在努力添加对键盘导航的支持,这样您就可以使用箭头键专注于一张照片,然后按空格键全屏查看它,关闭它,然后专注于另一张照片。这在照片应用程序中运行良好,但在我的应用程序中,当您关闭全屏视图控制器时,焦点不会恢复 - 直到您再次按下箭头键,该单元格才会聚焦。当呈现的视图控制器被解除时,如何恢复焦点?

为了启用焦点,我将这些设置在UICollectionViewController

collectionView.allowsFocus = true
collectionView.allowsFocusDuringEditing = true
collectionView.remembersLastFocusedIndexPath = true

我认为设置这个可以解决问题,但我得到了相同的行为:

restoresFocusAfterTransition = true
4

1 回答 1

0

经过大量调试,我确定这不起作用,因为我覆盖了canBecomeFirstResponder返回true。一旦我false在呈现和呈现的视图控制器中返回,焦点在关闭呈现时正确恢复到呈现。我不确定这是否是故意行为,所以我提交了错误报告 FB9814702。

于 2021-12-27T03:18:11.370 回答