Use this skill to build, review, or improve UIKit features with correct lifecycle management, performant Auto Layout, modern collection view APIs, and safe navigation patterns. Prioritize native APIs, Apple's documented best practices, and performance-conscious patterns. This skill focuses on facts and best practices without enforcing specific architectural patterns (no MVVM/VIPER/Coordinator mandates).
View Controller Lifecycle Method Selection | Method | Use For |
| viewDidLoad | One-time setup: subviews, constraints, delegates | | viewIsAppearing | Geometry-dependent work, trait-based layout, scroll-to-item | | viewWillAppear | Transition coordinator animations only | | viewDidLayoutSubviews | Lightweight layer frame adjustments (fires multiple times) |
Write, review, or improve UIKit code following best practices for view controller lifecycle, Auto Layout, collection views, navigation, animation, memory management, and modern iOS 18–26 APIs. Use when building new UIKit features, refactoring existing views or view controllers, reviewing code quality, adopting modern UIKit patterns (diffable data sources, compositional layout, cell configuration), or bridging UIKit with SwiftUI. Does not cover SwiftUI-only code. Source: ivan-magda/uikit-expert-skill.