ちょっとしたことですが、今後も使う機会がありそうなので備忘録としてまとめ。
Swift の UICollectionView
の Cell に影を追加する方法についてです。
ViewController に数行追加するだけなので、作業としては簡単です。
参考にさせていただいた記事はこちらから。
CollectionViewCell add shadow | Apple Developer Forums
https://developer.apple.com/forums/thread/116678
サンプルコードは下記の通りです。
セルの設定を行う cellForItemAt
にコードを追加していきます。
override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { let cell: UICollectionViewCell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell", for: indexPath) cell.layer.borderWidth = 0.0 cell.layer.shadowColor = UIColor.black.cgColor cell.layer.shadowOffset = CGSize(width: 1, height: 1) cell.layer.shadowOpacity = 0.3 cell.layer.masksToBounds = false return cell }
追加したコードは 4〜8行目です。
なお、コードを追加する際の注意点なのですが、どうやら cell.layer.masksToBounds = false
を一番最後に書かないと、影が表示されるようにならないみたいです。
それ以外のコードは追加・削除しても何も問題なかったのですが、これだけは必ず末尾に追加する必要があるようでした。
これだけ気をつければ、あとは好きな見た目に調整することは難しくなかったです。
今回は指定しませんでしたが、角丸などの設定も追加できます。
以上、Swift の UICollectionView の Cell に影を追加する方法についてでした。
ご参考になれば幸いです。