Author
Matt Neuburg
Senior Mobile Engineer
Matt has been writing and updating his well-known iOS programming books every year since 2010, and is widely considered a foremost educator about Swift, Xcode, and Cocoa. He has also written the definitive guide to AppleScript, as well as some other programming languages. He makes tech topics not only readable but enjoyable. Matt is also a former Classics professor. This means he can read Ancient Greek, which rarely comes up in iOS programming, but is really cool.
Published Posts
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 …
Rant: Swift, Cocoa, Target–Action, and Instance Property Initialization
As someone who spends a lot of time hanging out on Stack Overflow, I get to see first hand what traps iOS Cocoa programmers fall into. In fact, that’s why I spend a lot of time hanging out on Stack Overflow. It’s fun and instructive. But it also pains me to see people making the …
Rant: Swift, Cocoa, Target–Action, and Instance Property Initialization Read More »
Tricks for Testing External Links
On iOS, there is no deep mechanism for interapplication communication such as macOS provides through Apple events. Your app is sandboxed; other apps cannot drive it. There is, however, a simple and safe mechanism for letting another app send small messages to your app, namely through external links. We are all familiar with links. Suppose …
The Developer’s Guide to Cell Background Configuration in iOS 14
In an earlier article, I introduced iOS 14’s new content configuration architecture. As I showed in that article, this architecture is useful particularly in a cell, meaning a UITableViewCell or a UICollectionViewCell: A cell has a contentConfiguration property; whatever content view the cell’s content configuration creates, the cell makes that its own contentView, automatically. To …
The Developer’s Guide to Cell Background Configuration in iOS 14 Read More »
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 User-Interactive Cell Configurations in iOS 14 Read More »
The Developer’s Guide to List Content Views 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. As I showed in …
The Developer’s Guide to List Content Views in iOS 14 Read More »
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 …
The Developer’s Guide to Cell Content Configuration in iOS 14 Read More »
The iOS Developer’s Guide to Updating an App to iOS14
Each year, like clockwork, for better or worse — sometimes, in my opinion, very much for worse — Apple releases a new version of iOS. We’re all used to the forced march of the calendar by now. In June, WWDC is held, and the new version appears in beta. In September, it goes final. And …
The iOS Developer’s Guide to Updating an App to iOS14 Read More »