问题描述
对于我创建的所有 UICollectionView,我的 ViewController 具有三个 UICollectionView,但对于最后一个 UICollectionView,我不想显示菜单,并且对于
如何禁用最后一个 UICollectionView 的长按动画?这确实很容易,但我无法删除默认情况。
我的代码示例:
func collectionView(_ collectionView: UICollectionView,contextMenuConfigurationForItemAt indexPath: IndexPath,point: CGPoint) -> uicontextmenuconfiguration? {
switch collectionView {
case favoriteCollectionView:
return uicontextmenuconfiguration(identifier: nil,previewProvider: nil) {...}
case allCollectionView:
return uicontextmenuconfiguration(identifier: nil,previewProvider: nil) {...}
default:
// This menu empty and doesn't show but the animation of long pressed not disabled how to fix this?
return uicontextmenuconfiguration(identifier: nil,previewProvider: nil)
}
}
解决方法
通过 return nil
插入 return UIContextMenuConfiguration(identifier: nil,previewProvider: nil)
func collectionView(_ collectionView: UICollectionView,contextMenuConfigurationForItemAt indexPath: IndexPath,point: CGPoint) -> UIContextMenuConfiguration? {
switch collectionView {
case favoriteCollectionView:
return UIContextMenuConfiguration(identifier: nil,previewProvider: nil) {...}
case allCollectionView:
return UIContextMenuConfiguration(identifier: nil,previewProvider: nil) {...}
default:
return nil //<-- HERE
}
}