Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/101.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 使用didSelectItemAtIndexPath时,是否可以访问所有不等于indexpath的单元格?_Ios_Swift_Uitableview_Uicollectionview_Uicollectionviewcell - Fatal编程技术网

Ios 使用didSelectItemAtIndexPath时,是否可以访问所有不等于indexpath的单元格?

Ios 使用didSelectItemAtIndexPath时,是否可以访问所有不等于indexpath的单元格?,ios,swift,uitableview,uicollectionview,uicollectionviewcell,Ios,Swift,Uitableview,Uicollectionview,Uicollectionviewcell,我不熟悉Swift和编码,所以如果我的问题含糊不清,或者答案显而易见,请原谅我 我有一个collectionView,里面有许多单元格。当我选择一个单元格时,我想更改除所选单元格之外的每个单元格的颜色。我正在使用委托方法:didSelectItemAtIndexPath。如何才能访问indexpath不等于所选单元格indexpath的单元格?一种方法是,可以将indexpath存储在类中的变量中,并在存储此indexpath后在didSelectItemAtIndexPath中重新加载集合视图

我不熟悉Swift和编码,所以如果我的问题含糊不清,或者答案显而易见,请原谅我


我有一个collectionView,里面有许多单元格。当我选择一个单元格时,我想更改除所选单元格之外的每个单元格的颜色。我正在使用委托方法:didSelectItemAtIndexPath。如何才能访问indexpath不等于所选单元格indexpath的单元格?

一种方法是,可以将indexpath存储在类中的变量中,并在存储此indexpath后在didSelectItemAtIndexPath中重新加载集合视图。之后,在cellForItemAtIndexPath中,检查存储的indexPath并更改单元格的颜色。

您可以使用集合视图的属性获取所有可见单元格。该属性返回一个数组,您可以遍历该数组并使用它来测试它是否是您不希望着色的数组

然后,您需要确保在用户滚动时更新其他单元格,方法是在从数据源方法提供新单元格或使用时设置适当的颜色