選択したセルの背景色を変えたくないと思いますか? このコードを試してください。
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
UICollectionViewCell *cell = [collectionView cellForItemAtIndexPath:indexPath];
cell.backgroundColor = [UIColor magentaColor];
}
- (void)collectionView:(UICollectionView *)collectionView didDeselectItemAtIndexPath:(NSIndexPath *)indexPath
{
UICollectionViewCell *cell = [collectionView cellForItemAtIndexPath:indexPath];
cell.backgroundColor = [UIColor cyanColor];
}
異なるステータスのセルに異なるBGカラーを割り当てるだけです。 また、以下のコードは、シーケンストリガメソッドのドキュメントであり、誰かがcollectionViewセルに触れている間です。 UICollectionView.hファイル、UICollectionViewDelegateプロトコル部分でこれらのドキュメントを見つけることもできます。
// Methods for notification of selection/deselection and highlight/unhighlight events.
// The sequence of calls leading to selection from a user touch is:
//
// (when the touch begins)
// 1. -collectionView:shouldHighlightItemAtIndexPath:
// 2. -collectionView:didHighlightItemAtIndexPath:
//
// (when the touch lifts)
// 3. -collectionView:shouldSelectItemAtIndexPath: or -collectionView:shouldDeselectItemAtIndexPath:
// 4. -collectionView:didSelectItemAtIndexPath: or -collectionView:didDeselectItemAtIndexPath:
// 5. -collectionView:didUnhighlightItemAtIndexPath:
iosuicollectionviewuicollectionviewdelegate
私はUICollectionViewとテーブルビューの組み合わせビューにカスタムグリッドを変えた...この答えを探していました。両方のメソッドを実装すると、選択を選択してから変更することができます。ありがとうスティーブ、これは私のためのトリックでした。 –