Keith Harrison (@kharrison) 's Twitter Profile
Keith Harrison

@kharrison

I write about iOS development at useyourloaf.com. Also (mostly) at twit.social/@kharrison

ID: 11601812

linkhttps://useyourloaf.com calendar_today28-12-2007 13:22:48

191 Tweet

3,3K Followers

63 Following

Keith Harrison (@kharrison) 's Twitter Profile Photo

Notes from my WWDC23 Core Data lab, mostly about CloudKit sync but touching on SwiftData and a few other things useyourloaf.com/blog/wwdc23-co… #WWDC23 #CoreData

Keith Harrison (@kharrison) 's Twitter Profile Photo

In iOS 17, Apple deprecated the onChange(of:perform) view modifier replacing it with two new variations. #iOSDev #SwiftUI useyourloaf.com/blog/swiftui-o…

Keith Harrison (@kharrison) 's Twitter Profile Photo

There's not much (any?) documentation on how you run background SwiftData tasks. Here's what works for me. #SwiftData #iOSDev useyourloaf.com/blog/swiftdata…

Keith Harrison (@kharrison) 's Twitter Profile Photo

Turning on strict concurrency checking for all targets in a Swift package: useyourloaf.com/blog/strict-co… #iOSDev #SwiftLang

Keith Harrison (@kharrison) 's Twitter Profile Photo

Everyone gets the dynamic island but not much else is new with the iPhone 15 screen sizes useyourloaf.com/blog/iphone-15… #iOSDev

Keith Harrison (@kharrison) 's Twitter Profile Photo

Apple deprecated traitCollectionDidChange in iOS 17, replacing it with a method to register for specific trait changes. #iOSDev #UIKit useyourloaf.com/blog/registeri…

Keith Harrison (@kharrison) 's Twitter Profile Photo

iOS 17 adds support for custom UIKit traits that bridge to the SwiftUI environment #iOSDev #SwiftUI useyourloaf.com/blog/custom-tr…

Keith Harrison (@kharrison) 's Twitter Profile Photo

In iOS 17, Apple added control over which column shows when a Split View collapses to a single column. #iOSDev #SwiftUI useyourloaf.com/blog/swiftui-s…

Keith Harrison (@kharrison) 's Twitter Profile Photo

Each year I think I’ve done the last update to my Auto Layout book but Apple manages to change just enough to tempt me. The latest edition is updated for Xcode 15 and iOS 17. For 20% off with code BLACKFRIDAY follow this link kharrison.gumroad.com/l/albook/black… #iOSDev

Keith Harrison (@kharrison) 's Twitter Profile Photo

There are at least three ways to delete data from a SwiftData store. Here’s a quick recap. useyourloaf.com/blog/swiftdata… #iOSDev #SwiftData

Keith Harrison (@kharrison) 's Twitter Profile Photo

Let’s get the year started with a couple of #SwiftData bug reports about fetching pending changes useyourloaf.com/blog/swiftdata…

Keith Harrison (@kharrison) 's Twitter Profile Photo

I never fully understood what was going on using Xcode Intent Definition files to create app shortcuts. The App Intents framework (iOS 16) gets rid of the config files but it's still a lot to learn. #iOSDev useyourloaf.com/blog/getting-s…

Keith Harrison (@kharrison) 's Twitter Profile Photo

Silencing the Core Data CloudKit sync debug messages that fill the Xcode console #iOSDev #CoreData #SwiftData useyourloaf.com/blog/disabling…

Keith Harrison (@kharrison) 's Twitter Profile Photo

Still using print statements to debug your App. Maybe it's time you moved to the unified OS logging framework? #iOSDev #Xcode useyourloaf.com/blog/xcode-con…

Keith Harrison (@kharrison) 's Twitter Profile Photo

Turning on strict concurrency checking doesn't protect you from accidentally blocking the main actor. Something I find way too easy to do as I learn how to use Swift Concurrency. #SwiftLang #iOSDev #SwiftUI useyourloaf.com/blog/swiftui-t…

Keith Harrison (@kharrison) 's Twitter Profile Photo

Using the Entry macro to reduce boilerplate when adding custom values to the SwiftUI environment #iOSDev #SwiftUI useyourloaf.com/blog/entry-mac…