我一直在使用UICollectionView
中的focus api,但无法获取要触发的委托方法。不幸的是,文档很少。
我有一个自定义的UIViewController
子类,在其中实现了以下操作:
override var preferredFocusEnvironments: [UIFocusEnvironment] {
return storedCellReference != nil ? [storedCellReference] : super.preferredFocusEnvironments
}
func collectionView(_ collectionView: UICollectionView,
canFocusItemAt indexPath: IndexPath) -> Bool { return true }
func collectionView(UICollectionView, shouldUpdateFocusIn: UICollectionViewFocusUpdateContext) -> Bool { return true }
func collectionView(UICollectionView, didUpdateFocusIn: UICollectionViewFocusUpdateContext, with: UIFocusAnimationCoordinator) {
// custom animation code here
}
在集合视图委托didSelect处理程序中,我存储了对单元格的引用并调用view.setNeedsFocusUpdate()
,但没有一个集中api方法达到断点。任何人都有指针吗?