Collection View Content Configuration in iOS 14

In a series of earlier articles, I introduced the iOS 14 cell content configuration architecture. My examples consisted entirely of table view cells, but I was careful to point out that exactly the same thing applies to collection view cells because UICollectionViewCell has contentConfiguration and backgroundConfiguration properties, just like UITableViewCell. A collection view cell, unlike […]

The Developer’s Guide to User-Interactive Cell Configurations in iOS 14

In an earlier article, I introduced iOS 14’s new content configuration architecture. You have a UIContentConfiguration object and a UIContentView, and they go together. Configuring the content configuration object expresses the data you want represented; the configuration object then generates the content view, which constructs the interface that displays that data. A UITableViewCell or a […]

The Developer’s Guide to Cell Content Configuration in iOS 14

Have you ever written table view code like this? override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCell(withIdentifier: cellID, for: indexPath) let label = // … label.text = “Hello, world” return cell } Looks simple and innocent enough, but there’s something very wrong with it, philosophically speaking. This is […]