SwiftUI100

Working through the 100 Days of SwiftUI on Paul Hudson’s Hacking With Swift site, I decided I wanted to try and complete each day and run the code on the Apple Watch. This meant dealing with some parts of SwiftUI which are not currently available to watchOS.

  • Day 86 … 91 FlashZilla – Gestures and Haptics

    Day 86 Gestures Basic gestures, onTapGesture, onLongPressGesture worked with no alterations. However, as soon as we look at the MagnificationGesture we find that this is not available on watchOS. Similarly RotationGesture is also not available.…

    white ruled paper lot on brown wooden surface

  • Day 79 … 84 HotProspects

    Day 79,80, 81 This project seemed to be working very well on the watch. Up until, day 81 when Paul introduces the idea of the Context Menu. In watchOS the context menu used to be…

    person using smartphone shallow focus photography

  • Day 68…70 BucketList

    The first day seemed to work well using different ways of using MapAnnotation structs, up until trying to use a NavigationLink within the MapAnnotation. For some reason I could not get the link to work…

    charging smartphone and white earphones on wooden table

  • Day 62…67 Instafilter

    The first day of this project runs through a few techniques. I particularly liked the .confirmationDialog() example. This seems to work well on the watch, and the Cancel button is moved out of the list…

    dark vintage technology blur

  • Day 57… 59 CoreData

    I felt that using the Toolbar to place the buttons on the view was not particularly the best approach. I then found that watchOS doesn’t allow for two buttons in the toolbar. Whichever button is…

    antique banking blur business

  • Day 50 – Cupcake

    A few small things need some adjustment to work well on the Apple Watch. The main accommodation is the wording of the Stepper. The watch’s smaller screen means that only the number can be used…

    apple watch and air pods on black surface

  • Day 53…54 – Bookworm

    Today we are building an app that stores its data in CoreData. However, very early on in the build process Paul suggests using the TextEditor input view. This unfortunately is not available in watchOS, so…

    pile of assorted novel books

  • Day 40…41 Moonshot

    Mostly everything works quite well on the watch. Because of the screen size we only end up with one column in the LazyVGrid, but this is fine and allows the same code to run on…

    Error message

  • Day 36 – iExpense

    Everything seemed to go well with the first set of topics for the iExpense App. However, one thing that is not available on watchOS yet is the EditButton(). Xcode gives the error ‘EditButton’ is unavailable…

    person using macbook pro on person s lap

  • Day 29 and 30 – WordScramble App

    The WordScramble App was a partial success on watchOS. There are some big ‘gotchas’ that mean some further knowledge of workarounds would be needed to make it truly work well on the most personal device.…


Search for an article