Sitemap - 2022 - Type Safely

Dismiss The Keyboard When Scrolling a ScrollView

Use a Switch To Display a Different Alert Based On Error Type

Use Different Blending Modes To Combine Layered Views

See What Property Change Caused SwiftUI To Refresh a View

Detect Light or Dark Mode and Display Both Variations In Previews

Applying a Colour Filter To Any View

Change The Saturation of a View And Its Subviews

Add a Popover To Any View

Use .layoutPriority To Specify Which View Occupies The Most Available Space

Write Markdown In a TextEditor and Display The Result In Text

Use .privacySensitive() To Redact Text

Use An Extension Function For a Specific View

Combine Multiple Text Instances Using Concatenation

Use CryptoKit To Encrypt and Decrypt Data

Using Swinject For SwiftUI Dependency Injection

Use SwiftUI Inspector To Convert Figma Designs To Code

Using Optional Try? Instead of Do-Catch

Use a Protocol To Define Button Requirements

How To Stop Using Spacer And Only Use .frame() For Any Layout

Store 5 Basic Data Types Persistently With @SceneStorage

Use Introspect To Modify The UIKit Views Inside Common SwiftUI Controls

Literally Modify Colours Inside of Code Files With #colorLiteral

Using The @ViewBuilder Attribute Only When It's Absolutely Necessary

Specify The Animation That Happens When a Stepper Changes Value

Create a View Modifier For Proportional Padding

Create a Default View Body To Apply When One Is Not Provided

Change Control Centre Settings During a UI Test

Specify The Animation That Happens When a Toggle Changes State

How To Use Multiple Trailing Closures and Know Which Ones Need Labels

Hiding The Sheet Drag Indicator and Binding Sheet Detent Selection

Use This Attribute To Require That All Class Properties Are Initialized

Use One Initializer To Create an Image From a Symbol or File

Use a Static Subscript To Access Values On a Type

Using a Switch and ForEach To Cast From an [Any] Array

Change Horizontal and Vertical Spacing In a Grid

Use The watchOS 9 Full Keyboard With TextFieldLink

Use .dynamicTypeSize To Specify How Accessibility Settings Affect Text Size

React To Network Status Changes With NWPathMonitor and SwiftUI

Choose The Largest View For a Container With ViewThatFits

Display The Current Platform and OS Using #unavailable In SwiftUI

Use @available For Deprecating and Obsoleting Old Code

Call Instances of Any Type Like a Function With @dynamicCallable

Use .hueRotation To Colour Shift Using An Angle

Create a Touch Bar Interface With SwiftUI

Add a Simple Lock Screen Widget

Customise The Dynamic Island Even More

Get Started With Apple's Dynamic Island Widget Example Code

Use .fontDesign To Specify Monospaced or Other Font Design Types

Change The Style of a NavigationSplitView To .balanced or .prominentDetail

Dismiss The Search Bar With a DismissSearchAction

Check The Current Platform and Version More Easily Than Using #available

Pass Data Between Settings and Other Scenes In a SwiftUI macOS App

Create a Timer or Stopwatch Using Only a SwiftUI Text View

Resize a Shape Without Affecting The Layout of Other Views

Use Multiple Shadows With .foregroundStyle

Compile a Documentation Catalog To Use In Your App

Use .identified() To Use Any Array In a ForEach

Align Grid Cells Relative To Their Columns With HorizontalAlignment

Change TextEditor Background Using .scrollContentBackground(.hidden)

Use .gridCellColumns To Specify When a View Should Span Multiple Grid Columns

Avoid System Gestures Interfering With Your App With .defersSystemGestures

Use Baseline Offset To Change The Vertical Location of Text

Create a Menu In The Navigation Title With .toolbarTitleMenu

Using a Gradient or Material As a Tint

Using Find & Replace and Hiding Replace With .replaceDisabled

Presenting a Find Navigator and Hiding It With .findDisabled

See The Effect of Kerning on Text By Using a Slider

Use a ShareLink To Share Any Text In a Written Into a TextField

Use The New .accessibilityActions Modifier In iOS 16

TextField Types That Expand and Scroll With a Vertical Axis

Using .backgroundPreferenceValue To Create a Background Based On a PreferenceKey In iOS 16

Fade and Slide Views With The New Push Transition In iOS 16

Convert Text To An Image with ImageRenderer

Change The NavigationTitle With a Binding<String>

Use LocalizedStringResource To Store a Localized Value And Use It In SwiftUI

Use .toolbarColorScheme To Customise a Navigation Bar in iOS 16

Perform an Action When The Mouse Cursor Enters a View With .onContinuousHover

Using The Charts API To Display Stacked Bars

Change Form Appearance With FormStyle In iOS 16

Display Data With a Title With LabeledContent

Use .toolbarBackground To Customise a Navigation Bar in iOS 16

Use .drop and .inner as a ShadowStyle

Use The New SpatialTapGesture To Get The Location of Any Tap

Allow Renaming of List Items With .renameAction and RenameButton

Use The ColorScheme Placeholders Color.primary and Color.secondary

Clip Any View To The Bounds of Its Parent Using .clipped()

Use .fileExporter To Export Files To The Files App

Use .fileImporter To Import Images From The Files App

Use .confirmationDialog To Add Actions To a Popover

Drag and Drop The New Simpler Way With .draggable and .dropDestination in iOS 16

Use a Long Press Gesture To Toggle a Boolean State Back To False

Change The Background of a List With BackgroundContent

Create a Combine Publisher From a ClosedRange

Using Multiple Bindings With a SwiftUI Toggle (New in 2022)

Calling a RefreshAction From Custom Views That Can't Use .refreshable

Use a Segmented Picker To Switch @FocusState Between Text Fields

Use Custom Colours From Assets Without Relying On Strings

Use .searchable To Filter A SwiftUI List

Use @FocusState and @Binding To Control TextField Focus From Any Other View

Use The New NavigationSplitView On iPhone and iPad

Create a Table Using The New TableColumn In SwiftUI

Use The New Type Placeholder Declaration With Underscores

Use The 'some' Keyword For Any Function Parameter That Conforms To a Protocol

Use The New UIHostingConfiguration To Display SwiftUI In a UITableViewCell

Using The Never Type To Deal With Fatal Errors

Use The New Transferable Type With a a SwiftUI PasteButton

Use AnyLayout To Choose a Layout At Runtime

Snap a Sheet To Multiple Heights Like In Apple Maps With Presentation Detents

Use a Custom Type To Populate The New Grid Layout With Data

Using The New Colour Variable Value In SF Symbols 4

Store NavigateStack State Using An Enum With Associated Types

Use a TextField To Create a Custom NavigationPath For The New NavigationStack

Using CustomReflectable To Debug a SwiftUI View Whenever It Refreshes

Redirect an ENS Domain To Any Website Using Fleek and IPFS

Make The New Color Gradient Easier To Use By Conforming To View

WWDC22: Use 'if let' Without Restating The Name of The Optional

WWDC22: Use The New CircleLayout To Equally Space Views Around A Specific Radius

WWDC22: Use The New Clock API To Delay Execution Of Code

WWDC22: Use The 'any' Keyword For Any Type That Conforms To a Protocol With An Associated Type

WWDC22: Create a SwiftUI Chart With a Form For Changing Data

WWDC22: Get Started With WeatherKit

WWDC22: Use The New For In Try Await

Create Space Between SwiftUI Views Without Using a Spacer

Using AsyncImage To Display An Image From Any URL

Recreate The Apple Logo Using a SwiftUI Path With Only 7 Points

Using State and Binding Without The @ Symbol

Turn Any View Into a Toggle Using One Simple Modifier

A ColorPicker That Sets and Stores Your View's Foreground Colour Within a ViewModifier

Proportional Padding That Scales With a SwiftUI View

Use a Material Overlay To Blur Content Underneath

Using Computed Properties To Build SwiftUI Subviews

Write SwiftUI in a Swift Playgrounds App Project, Not a Regular App Project!

Previewing Private SwiftUI View Structures

Making Subviews Private So They Cannot Be Used Elsewhere

Custom Time Interval Strings With DateComponentsFormatter

Create a SwiftUI Timer That Counts Down To WWDC 2022

Using The .imageScale Modifier And Specifying Image Orientation

Use SwiftUI and Machine Learning To Identify Nearly 1,000 Objects With Your Camera

Create a Property Wrapper For Double That Returns The Value As a Rounded String

Construct An NSPredicate Without Using Strings And Use it To Filter An NSArray

Use NSPredicate To Filter FetchedResults From Core Data

Use The .task SwiftUI Modifier To Perform Async Data Tasks

Make a SwiftUI Notes App That Saves To Core Data With FetchRequest

Using Enum Instead of Struct For SwiftUI Views

Break SwiftUI's 10 Child View Limit By Extending ViewBuilder

Create @ShapeBuilder So You Can Use The 'some Shape' Opaque Return Type

Write An Entire SwiftUI View Using Emojis Instead of Words

Presenting SwiftUI Views From Objective-C

Using Debugger Commands To Print Values in Xcode

Get Started With Result Builders: The Technique Formerly Known As Function Builders

Keep a Copy of Another Repository With Git Submodules

Push An Initial Commit To a New GitHub Remote With a Single Shell Command

Changing From Local To Remote Swift Packages

Separating SwiftUI Views And Models Into Swift Packages

Using The View Hierarchy Debugger With SwiftUI

Use Patterns To Refine Global Searches In Xcode

Changing The Background of a SwiftUI List

Drag And Drop SwiftUI Views With The .onDrop Modifier

Using Plot To Write HTML With Swift On A Vapor Server

Using The Same Shape For a Button's Mask and Outline

Unlock Every IBDesignable Property In a UIView

Test Your SwiftUI With a Text File That Describes The Entire View Hierarchy

Do Custom Drawing With a SwiftUI Canvas

Unit Test SwiftUI Visually With Snapshot Testing

Optional Views as @State Properties

Use SwiftUI To Display The Current Time With TimelineView

Use a Wireframe Modifier To Easily See The Outline of SwiftUI View

Pin SwiftUI Previews So You Can See Them Anywhere

Use SwiftUI Syntax For Any UIView

A SwiftUI Form For Creating New Contacts

Add Anything To The Xcode Library With LibraryContentProvider

Make a Retro LCD Number Display With SwiftUI

Better Ways To Use PreviewProvider