我将我UICollectionViewController
的 'useLayoutToLayoutNavigationTransitions
属性设置为 'YES' 以便为-[UINavigationController pushViewController:animated:]
和执行布局到布局转换popViewControllerAnimated:
。此外,我还实现了基于捏合手势的交互式过渡。
此外,我还定义了一个UICollectionViewTransitionLayout
行为不同于UICollectionViewTransitionLayout
. 我创建了我的“CustomLayoutTransition”对象的一个实例并从-[UICollectionViewDelegate collectionView:transitionLayoutForOldLayout:newLayout:]
.
当我这样做时,我期待两种行为
CustomLayoutTransition
用于执行自定义布局到布局转换
1) 当交互转换由捏合手势触发时,或
2) 当我推送/弹出 的实例时UICollectionViewController
,例如,通过调用[UINavigationController pushViewController:animated:]
我的期望 #1 似乎是正确的,但 #2 不是;似乎当我以编程方式进行推送/弹出时,UICollectionViewTransitionLayout
使用的是 Apple 提供的原始转换布局,而不是我的自定义转换布局。
UICollectionViewTransitionLayout
在这种情况下使用而不是我的自定义过渡布局是否正常?
如果这是正常行为,是否有办法在以编程方式推送/弹出时使用自定义转换来执行布局到布局转换UICollectionViewController
?