繁体   English   中英

关闭呈现的视图控制器时如何恢复焦点?

[英]How to restore focus when presented view controller is dismissed?

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

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

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

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

restoresFocusAfterTransition = true

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM