UICollectionView重新排序不可移动的单元格问题

时间:2016-01-18 04:18:50

标签: ios uicollectionview

我正在使用iOS 9的酷重新排序功能制作UICollectionView。我可以通过在数据源的函数require.config({ baseUrl: './js', paths: { "ko_editables": "ko.editables" }, "shim": { ko_editables: { deps : [ 'knockout' ] } } }); 中为该索引路径返回No来使单元格无法移动。

然而,我发现电池可以用可移动物品替换,这是不可取的。

例如,

source

We cannot move the 3rd item (screenshot).

第三个细胞真正修复的好主意是什么?

1 个答案:

答案 0 :(得分:10)

假设indexpath = {x,y}处的项目无法移动。尝试使用以下委托方法。

collectionView(_:targetIndexPathForMoveFromItemAtIndexPath:toProposedIndexPath:)

如果建议的索引路径等于{x,y},那么您可以为项目提供所需的索引路径。前{x+1,y}

来自文档:

  

在项目的交互式移动期间,集合视图调用   此方法可以查看是否要提供不同的索引路径   拟议的路径。您可以使用此方法来阻止用户   将项目放在无效的位置。例如,你可能   防止用户丢弃特定部分中的项目。