ちょっと前のアップデートで、正しくcontentViewに追加していない場合に、セルの挙動がおかしくなるケースが多発したと思います。
この前Xcode13に上げたタイミングでも食らってしまい、
cellに直接addSubviewしたいケースも多分ないと思ったので、作ってみました。
lintとかでやると大掛かりになるので、雑にdeprecatedにしてしまえという発想です。
#if DEBUG import UIKit extension UITableViewCell { @available(*, deprecated, message: "Subviews should be added to the cell's contentView") override open func addSubview(_ view: UIView) { super.addSubview(view) } } extension UICollectionViewCell { @available(*, deprecated, message: "Subviews should be added to the cell's contentView") override open func addSubview(_ view: UIView) { super.addSubview(view) } } #endif
警告だらけで埋もれてしまう場合、deprecated
をunavailable
にすればビルドが通らなくなります。