Customizing the navigation bar in UIKit
A technical guide to fully customizing the UINavigationBar in UIKit, covering background, title, button colors, and status bar style.
A technical guide to fully customizing the UINavigationBar in UIKit, covering background, title, button colors, and status bar style.
Announcing the fifth edition of Advanced Swift, updated for Swift 5.6 with new concurrency content, property wrappers, and a hardcover print edition.
A tutorial on building a Swift CLI tool for generating app icons on Linux and macOS using Swift Argument Parser and SwiftGD.
A tutorial on implementing single and multiple selection in UITableView using UIKit's diffable data sources.
A guide on introducing Test-Driven Development (TDD) to a software team through leading by example and building consensus.
Analyzes the downsides of exhaustive testing in The Composable Architecture (TCA), arguing it leads to fragile tests and violates TDD principles.
A guide to debugging and inspecting files in iOS apps using the Files app and Xcode's container download feature.
A tutorial on using the SwiftHttp library to build async HTTP API clients in Swift, featuring async/await support and request handling.
Explains abstract types and methods in Swift, comparing abstract base classes with protocol-oriented approaches for defining shared interfaces.
A beginner's tutorial covering the basics of creating, accessing, and manipulating arrays in the Swift programming language.
Explains how Swift implements equality using the Equatable protocol, covering value vs. reference types, automatic synthesis, and conditional conformance.
Explains why XCTNSPredicateExpectation is slow for async tests and recommends using Nimble's toEventually for faster, more reliable tests.
A tutorial on building a C application by importing and using a Swift library, covering Swift/C interoperability and compiler flags.
A tutorial on creating rich documentation for Swift frameworks using DocC and deploying it to GitHub Pages for static hosting.
A guide to integrating a native mock HTTP server within XCTest for iOS UI testing, using Swifter to isolate tests from backend dependencies.
A guide for iOS developers on how to programmatically open their app's Documents folder in the Files app using a URL scheme.
Explains the differences between loadView and viewDidLoad in UIKit, focusing on memory management and weak vs. strong subviews.
Explains how to combine Swift protocols using inheritance and type-constrained extensions for flexible, reusable code.
A guide to correctly implementing gradient text in UIKit's UILabel, covering common pitfalls and solutions for proper rendering.
A collection of 10 modern UIKit tips for iOS developers, covering dark mode support, trait collection changes, and UIButton context menus.