100 Days of SwiftUI

Day 83

2026-08-05

Project 16, part 5

More on “HotProspects”

Generating and scaling up a QR code

Generated QR codes are only as big as they need to be, which on a high-resolutin display could be way too small. So turn off image interpolation to ensure the lines stay crisp.

We’re doing this in the MeView so we can give the information to others. I guess the assumption is that the others also have an app to read the QR code?

Scanning QR codes with SwiftUI

He’s made a QRCode reader into a SwiftUI package: https://github.com/twostraws/CodeScanner

Don’t forget to ask permission to use the camera!

samoyed sketchsamoyed sketch

Note: The project doesn’t build until you let Xcode add internal import AVFoundation to the ProspectsView

Adding options with swipe actions

To move people from uncontacted to contacted tabs; also deleting

This code in the tutorial puts the delete button behind the tab bar. The solution mentioned in the forums is to change .bottomBar to .topBarLeading

if selectedProspects.isEmpty == false {
    ToolbarItem(placement: .bottomBar) {
        Button("Delete Selected", action: delete)
    }
}