-
SwiftUI for Mac on Big Sur
In December 2019, I wrote a series of articles about using SwiftUI to build a Mac app. At WWDC 2020, Apple announced macOS 11 Big Sur along with Xcode 12 and a heap of new features for SwiftUI, so I decided to try creating my test app again and seeing how much had changed.
-
SwiftUI Snapshot Testing
Snapshot testing is a technique that has been very popular in the web development world and it seems like a great way to test SwiftUI user interfaces. I read about snapshot tests in a recent blog post and was intrigued, but I had some difficulty getting it to work, so when I finally succeeded, I decided to share my experiences in the hope that others will find them useful.
-
Name This App
My current work in progress is an iPhone app designed to make it easier to solve crossword anagrams by emulating and improving upon an ability that was there when we used to do crosswords on paper, but is missing for digital crosswords.
But I cannot think of a clever name for the app, so please read the story and contact me with your name suggestions or if you would like to test the pre-release version of this app.
-
SwiftUI Color
As developers, we are used to thinking of color as a numeric way to specify a particular tint. But in SwiftUI,
Color
- like almost everything else - is actually aView
in its own right. This leads us to two very interesting questions: how do we use a view to specify a color and how can we use the fact thatColor
isView
? -
Custom Fonts in iOS & macOS apps
As a rule, I prefer to use fonts that come pre-installed with the system. That means that your interface is already familiar to users, you get dynamic font sizing and if Apple updates the fonts, you get the updates without doing anything.
But sometimes, you really need to use a different font in your apps, and as the process of getting a custom font to display in your app can be confusing and tedious, I thought I would go through the steps for both iOS and macOS apps.
I probably should have published this on a different day, but it is not a joke.... really.