Building a Teleprompter for iPhone Duo's Outer Display with CameraCaptureAccessory
When iPhone Duo is open, its outer display faces the same way as the rear camera. CameraCaptureAccessory lets...
// Welcome to your SwiftUI learning journey. This curated collection of beginner-friendly tutorials will help you build your first apps and master core SwiftUI concepts. No prior iOS development experience required.
Begin with basic views and layouts. Build confidence with small, focused examples.
Experiment in Xcode Playgrounds or previews. Practice makes perfect.
Create small projects to reinforce concepts. Learning by doing is most effective.
// These tutorials are perfect for SwiftUI beginners, focusing on modern iOS 15+ features with clear, practical examples. Each tutorial builds real-world skills you can use immediately.
When iPhone Duo is open, its outer display faces the same way as the rear camera. CameraCaptureAccessory lets...
iOS 27.1 lets you read iPhone Duo's hinge angle and fold status with onHingeChange in SwiftUI and...
iPhone Duo reserves parts of its displays for the fold and the front cameras. Learn which regions exist, when...
ArrangementView is a new iOS 27.1 container that lays out a primary and secondary view side by side or...
On iPhone Duo, toolbars and tab bars move to the side of the screen. Learn when that happens, how to make...
iPhone Duo ships on October 23 with a folding inner display, a compact outer display, and toolbars that move...
iOS 27.2 changes App Tracking Transparency in the European Union: a full-page prompt with Markdown text, an...
UIScreen.main assumes your app lives on one screen with one size. iPhone Duo, iPhone Mirroring, and iPad...
How Form differs from List, how to structure it with Sections, what .grouped and .columns actually change...
iOS 18 introduced public APIs for building custom container views that can decompose content into individual...
Create interactive buttons for the Control Center using ControlWidgetButton and App Intents in iOS 18.
Add haptic feedback to your SwiftUI views using the sensoryFeedback modifier, with built-in support for...
A practical guide to SwiftUI animations covering implicit and explicit animations, spring physics...
Use ViewThatFits to automatically select the best layout variant based on available space, without writing...
Learn how to use Swift's @Observable macro introduced in iOS 17, understand its advantages over...
Learn how to create beautiful, interactive charts in SwiftUI using Apple's Swift Charts framework, from...
If your Live Activity renders a grey box instead of your image, the problem is almost certainly the image...
Preview Live Activity views right in Xcode without launching the app. Use the #Preview macro with content...
NavigationStack replaced NavigationView in iOS 16 with a more powerful programmatic navigation model. Here's...
Learn how to prevent users from dismissing modal sheets by swiping down in SwiftUI using...
Make your glass elements respond to touch with scaling, shimmer effects, and touch-point illumination using...
The cornerRadius modifier is deprecated in iOS 17. Here's how to use clipShape, RoundedRectangle, and the new...
The glassEffectID modifier enables glass views to smoothly morph into one another during state changes...
When you have multiple glass elements that should blend and animate together, GlassEffectContainer...
iOS 26 introduces Liquid Glass, a translucent design language for navigation elements. Here's how to apply...
Learn how to use ToolbarSpacer to add fixed and flexible spacing between toolbar items in SwiftUI, new in iOS...
Learn how to use the presentationDetents modifier to control sheet heights in SwiftUI, creating interactive...
PermissionKit lets children request parental permission to communicate with new contacts directly through...
Learn how to detect app lifecycle changes in SwiftUI, save state when your app enters the background, and...
When building UIs that stream AI-generated content using Apple's Foundation Models framework, testing...
Learn how to add horizontal padding inside a TextEditor without affecting the scrollbar using the...
Learn how to detect when users enable Low Power Mode and automatically reduce animations, refresh rates, and...
Learn how to integrate UIKit's App Delegate into your SwiftUI app for handling app lifecycle events and...
Learn how to access SwiftUI environment values in View extensions using ViewModifiers for clean, reusable...
Learn how to create a Material Design-style floating action button in SwiftUI that intelligently moves above...
Learn how to add custom toolbar buttons above the keyboard in SwiftUI using the .toolbar modifier with...
Learn how to prevent users from taking screenshots of sensitive content in your SwiftUI app using field-level...
Learn how to create a custom input accessory view that stays above the keyboard, similar to iMessage's input...
Learn how to add pull-to-refresh functionality to custom ScrollViews in SwiftUI without using List, perfect...
Learn how to build skeleton loading screens with animated shimmer effects in SwiftUI using gradients...
Learn how to dump all SwiftUI environment values for debugging purposes.
Learn how to implement undo/redo functionality in SwiftUI using UndoManager, including environment injection...
Learn how to align single and multiline text in SwiftUI.
Learn how to detect when a context menu is open in SwiftUI.
Learn how to create a WebView/WKWebView with a transparent/clear background in SwiftUI.
Learn how to accept user input in an alert using TextField or SecureField.
Learn how to create a modifier that limits the characters that can be entered in a TextEditor or TextField...
Learn the ways to scale a text view's font size to fit its parent view in SwiftUI.
Learn how to use a WKWebView as a quick way to load a GIF from a URL and display it in a SwiftUI view.
Learn how to use DisclosureGroupStyle to create custom DisclosureGroup views in SwiftUI.
Learn how to force the navigation bar to show a background color in SwiftUI.
Learn how to access your app's App Delegate from anywhere in your Swift code, including from SwiftUI views.