Tagged with Swift
- 09. Navigation Patterns in SwiftUI
Navigation Patterns In Swiftui
- 09. Links for September 9, 2024
Links for September 9, 2024
- 09. For a simple view, we can use onTapGesture to handle taps easily. At times you want to handle simultaneous gestures.
What is SwiftUI simultaneous gestures
- 09. Sometimes, we write code that needs set some state or perform some work at the start of a function and at the end of that same function we might have to reset that state, or perform some cleanup…
What is defer in Swift?
- 09. SwiftData adds predicate expressions in iOS 18.
SwiftData Expressions
- 08. Links for September 8, 2024
Links for September 8, 2024
- 08. When is AnyObject not AnyObject? When it's a protocol type.
AnyObject
- 05. At WWDC24, Apple introduced Swift Testing, which is a new way to write tests in Swift, practically replacing XCTest for unit tests. And it’s great. There are two sessions that give a great introduction to the new framework, and I recommend checking them out: Meet Swift Testing Go further with Swift Testing
Testing Swift Testing
- 05. Links for September 5, 2024
Links for September 5, 2024
- 14. Links for August 14, 2024
Links for August 14, 2024
- 14. Learn how you can decide whether a derived property makes sense as a computed property or should be a function instead.
Deciding between a computed property and a function in Swift
- 11. Links for August 11, 2024
Links for August 11, 2024
- 11. “Learn how you can use the if case let syntax to perform complex pattern matching against enums with associated values”
if case let in Swift explained
- 05. “Macros in Swift allow you to extend the compiler with custom build errors and code generation to eliminate extraneous boilerplate code.”
Swift Macros: Extend Swift with New Kinds of Expressions
- 05. Links for August 5, 2024
Links for August 5, 2024
- 13. “Debugging SwiftUI views allows you to find the cause of a redraw. Solve unexpected animation issues using this technique.”
Debugging SwiftUI views: what caused that change?
- 13. Links for July 13, 2024
Links for July 13, 2024
- 21. Links for May 21, 2024
Links for May 21, 2024
- 21. I didn’t know about this Swift feature. nice.
Swift Parameter Packs · paul-samuels.com
- 11. Parsing JSON Data is a fundamental in modern SwiftUI apps. This comprehensive guide covers all the aspects of the Codable protocols in Swift.
Parsing JSON in Swift: The Complete Guide [With Examples]
- 11. Links for May 11, 2024
Links for May 11, 2024
- 09. “To use for await item in streamOfItems {...}, you need an AsyncStream. It is very common that you already have an existing Combine publisher, and you want to use the nice Swift Concurrency syntax.”
How to create AsyncStream with a publisher
- 09. Links for May 9, 2024
Links for May 9, 2024
- 22. Links for April 22, 2024
Links for April 22, 2024
- 22. When SwiftUI was first released, one of the great features that piqued my interest was the instant preview function. This feature empowers developers to
Using Xcode Previews in UIKit Development | AppCoda
- 22. This has come up several times on the forums, but I've never written it up in a standard place, so here it is: **There are only three ways to get run-time polymorphism in Swift.** Well, three and a half.
Run-time Polymorphism in Swift
- 27. “Low-level framework SwiftNIO developed by Apple corporation is a foundation for all major server-side Swift frameworks: Vapor, Kitura, Smoke. However, none of these instruments comprehensively clarify main concepts and principles of usage of the most important part of NIO’s EventLoopPromise and EventLoopFuture, which leads to fundamental misunderstanding and confusion, and therefore questions like ‘How to get value from Future?’ are asked in all kinds of forums and chats.”
How I Learned to Stop Worrying and Love the EventLoopFuture
- 27. Links for March 27, 2024
Links for March 27, 2024
- 20. Links for February 20, 2024
Links for February 20, 2024
- 20. The new Apple Vision Pro device is almost here, and SwiftUI is the best way to build a visionOS app quickly and natively. This week, we will continue the topic of the new SwiftUI APIs that we can use to adapt our apps to visionOS. We will learn about the new user interface component called ornaments.
visionOS ornaments in SwiftUI
- 15. Links for February 15, 2024
Links for February 15, 2024
- 15. Mastering SwiftUI Scenes'. Delve into the world of app structure and learn how to effectively manage UI components, app lifecycle, and multi-window setups. Perfect for beginners and seasoned developers, this post offers in-depth insights and practical examples to elevate your iOS app development skills using SwiftUI
Mastering SwiftUI Scenes
- 12. Links for February 12, 2024
Links for February 12, 2024
- 12. “Discover 'How to use @Bindable in SwiftUI' with our detailed tutorial. This guide covers everything from the basics of the @Bindable property wrapper to advanced usage examples. Learn to create responsive and dynamic UIs with SwiftUI's latest features, all explained step-by-step.”
How to use @Bindable in SwiftUI
- 20. In this article, we'll look at view modifiers which we can use to setup a SwiftData model container and model context directly in SwiftUI.
How to get a SwiftData model container and context in SwiftUI
- 20. Links for December 20, 2023
Links for December 20, 2023
- 13. During WWDC 23, SwiftUI introduced a new view modifier called visualEffect. This modifier allows us to attach a set of animatable visual effects by accessing layout information of the particular view. This week, we will learn how to use the new visualEffect view modifier in SwiftUI.
Visual effects in SwiftUI
- 13. Links for December 13, 2023
Links for December 13, 2023
- 11. Links for December 11, 2023
Links for December 11, 2023
- 11. iOS 17 bring a new trick to animate number in SwiftUI. Let's learn how to do it.
Animating number changes in SwiftUI
- 11. Blazing-fast special effects for your SwiftUI apps.
Introducing Inferno: Metal shaders for SwiftUI
- 08. Links for December 8, 2023
Links for December 8, 2023
- 08. How to show anchor bottom view in SwiftUI
How to show anchor bottom view in SwiftUI
- 06. In this post, we’ll take a look at how to customize the macOS menu bar for a SwiftUI app, using SwiftUI tools like CommandMenu and CommandGroup.
How to customize the macOS menu bar in SwiftUI
- 06. Links for December 6, 2023
Links for December 6, 2023
- 06. In this post, we’ll take a look at how to customize the macOS about panel for a SwiftUI app, to let us show custom content.
How to customize the macOS About Panel in SwiftUI
- 05. Learn how to create reuse styles using ViewModifier.
How to create custom view modifiers in SwiftUI
- 05. Links for December 5, 2023
Links for December 5, 2023
- 05. Learn Swift and iOS Development on tanaschita.com. Stay up to date with guides and tutorials on topics like SwiftUI, Combine, concurrency with async/await and more.
How to migrate to a new schema with SwiftData in iOS
- 05. Animations were the most powerful feature of SwiftUI from day one. You can quickly build fluid animations in SwiftUI. The only downside was how we control animations whenever we need to run multi-step animation or scope the animation to a particular part of the view hierarchy.
Scoped animations in SwiftUI
- 05. Learn how to efficiently store larger amounts of data in SwiftData by using the .externalStorage attribute.
How to store images in SwiftData
- 28. Links for October 28, 2023
Links for October 28, 2023
- 28. The Toolbar API has been available for a considerable period, having been introduced with the release of iOS 14. It was a valuable addition to the SwiftUI
Customizing Toolbar and Navigation Bar in SwiftUI
- 28. Deeplinks allow you to link to any page in your app externally or inside. If intelligent, you can use them to increase productivity.
Deeplink URL handling in SwiftUI
- 21. Value and type parameter packs allow you to write generic functions that accept an arbitrary number of arguments with distinct types
Value and Type parameter packs in Swift explained with examples
- 21. Links for October 21, 2023
Links for October 21, 2023
- 21. Automating RawRepresentable Conformance with Swift Macros
Automating RawRepresentable Conformance with Swift Macros
- 21. Apple added a content unavailable view in iOS 17. It's available for both SwiftUI and UIKit.
Content Unavailable Views
- 21. Highlighting the Selected Item Button in a SwiftUI List
Highlighting the Selected Item Button in a SwiftUI List
- 21. At WWDC23, Apple introduced SwiftData - a framework which focuses on persisting data by using declarative code. SwiftData uses Swift's new macro system and is designed to work with SwiftUI.
Quick developer guide on SwiftData for iOS
- 21. Using SymbolEffect to Animate SF Symbols in SwiftUI
Using SymbolEffect to Animate SF Symbols in SwiftUI
- 21. In the earlier tutorial, I have walked you through the basics of SwiftData, a new framework introduced in iOS 17 as a replacement for Core Data. If you have
Using SwiftData with Preview in SwiftUI
- 11. Unit testing async/await logic can be done by marking your unit test as asynchronous and using a new XCTest method.
Unit testing async/await Swift code
- 11. Links for October 11, 2023
Links for October 11, 2023
- 11. The fifth iteration of the SwiftUI framework brings a lot of new APIs related to ScrollView, making it much more powerful than before. This week will begin the series of posts about new abilities of the ScrollView in SwiftUI, and we will start with scroll transitions.
Mastering ScrollView in SwiftUI. Transitions
- 11. Now that you should understand how to work with a PhotosPicker, let’s see how to embed it in our demo app. What we are going to do is to replace the “Select a
Creating an Inline Photo Pickers in iOS Apps with SwiftUI
- 24. Links for September 24, 2023
Links for September 24, 2023
- 24. Quick question: How would you align all subviews horizontally while keeping their centers aligned using autolayout?
Autolayout and aligning subviews
- 24. Parse and generate Swift code using SwiftSyntax packages. It is especially useful when writing custom Swift Macros.
SwiftSyntax: Parse and Generate Swift source code
- 24. In addition to the PhaseAnimator, SwiftUI introduced the KeyframeAnimator in iOS 17, allowing developers to create advanced animations using keyframes. In
Creating Advanced Animation with KeyframeAnimator in SwiftUI
- 04. Links for September 4, 2023
Links for September 4, 2023
- 04. Working with SwiftUI Maps and Annotations
Working with SwiftUI Maps and Annotations
- 02. Links for September 2, 2023
Links for September 2, 2023
- 02. Convenience Property Wrappers vs Custom Data Access Layer in SwiftUI
Property Wrappers Vs Data Access Layer
- 02. Xcode 15 can automatically create Swift symbols for your resources without any third party. Let's learn how to do it.
Access Images and Colors with Enum in Xcode 15
- 01. Embedded Swift
Embedded Swift
- 01. Links for September 1, 2023
Links for September 1, 2023
- 25. In iOS 17, Apple introduced the SwiftUI Preview Macro for previewing SwiftUI and UIKit views. This tutorial will walk you through its usage.
How to Use the SwiftUI Preview Macro in Xcode
- 25. Links for August 25, 2023
Links for August 25, 2023
- 23. Links for August 23, 2023
Links for August 23, 2023
- 23. In iOS 17, Apple introduced a new and simpler way to make a view response to data changes.
Observation Framework in iOS 17
- 19. Links for August 19, 2023
Links for August 19, 2023
- 19. Foundation’s URL (née NSURL) is a nearly ubiquitous API on Apple platforms. One of its shortcomings is that it is heavily overloaded – an instance of URL cou...
Swift URL absoluteString versus path
- 03. Detecting Scroll Positions in ScrollView with SwiftUI
Detecting Scroll Positions in ScrollView with SwiftUI
- 03. Links for August 3, 2023
Links for August 3, 2023
- 02. What’s new in Swift
What’s new in Swift
- 02. Links for August 2, 2023
Links for August 2, 2023
- 02. Singleton | Swiftly Engineered iOS
Singleton | Swiftly Engineered iOS
- 02. Introducing Swift HTTP Types
Introducing Swift HTTP Types
- 19. Links for July 19, 2023
Links for July 19, 2023
- 19. Unraveling Int16, Int32, and Int64 in Swift: Key Differences, Code Examples, and Optimization Strategies
Unraveling Int16, Int32, and Int64 in Swift: Key Differences, Code Examples, and Optimization Strategies
- 16. Expand on Swift macros
Expand on Swift macros
- 16. Links for July 16, 2023
Links for July 16, 2023
- 15. This is a really nice design for this.
SwiftUI: Trailing label TextField
- 15. Links for July 15, 2023
Links for July 15, 2023
- 14. Adding reverse masks to a view to cut out those pixels.
Blendmode trick: SwiftUI reverse mask
- 14. Links for July 14, 2023
Links for July 14, 2023
- 10. Stable Sort in Swift
Stable Sort in Swift
- 10. Links for July 10, 2023
Links for July 10, 2023
- 10. SwiftUI rendering pitfalls
SwiftUI rendering pitfalls
- 10. Mastering Canvas in SwiftUI
Mastering Canvas in SwiftUI
- 09. How the relative size modifier interacts with stack views – Ole Begemann
How the relative size modifier interacts with stack views – Ole Begemann
- 09. Links for July 9, 2023
Links for July 9, 2023
- 09. 5 Simple Steps to Find Slow Code Using Xcode Time Profiler
5 Simple Steps to Find Slow Code Using Xcode Time Profiler
- 09. Dynamic member lookup in Swift
Dynamic member lookup in Swift
- 09. How to initialize @Binding in SwiftUI
How to initialize @Binding in SwiftUI
- 09. Wrapping functions in structs
Wrapping functions in structs
- 09. Using Swift Reflection
Using Swift Reflection
- 09. Working with percentages in SwiftUI layout – Ole Begemann
Working with percentages in SwiftUI layout – Ole Begemann
- 09. Animate SF Symbols with symbolEffect
Animate SF Symbols with symbolEffect
- 09. Exploring a new iOS codebase
Exploring a new iOS codebase
- 09. Improving multiplatform SwiftUI code
Improving multiplatform SwiftUI code
- 30. Links for June 30, 2023
Links for June 30, 2023
- 30. The basics of structured concurrency in Swift explained
The basics of structured concurrency in Swift explained
- 30. What’s the difference between @Binding and @Bindable
What’s the difference between @Binding and @Bindable
- 30. Utilizing Makefiles for Swift projects
Utilizing Makefiles for Swift projects
- 26. Links for June 26, 2023
Links for June 26, 2023
- 26. Easy multipart file upload for Swift
Easy multipart file upload for Swift
- 25. How to use the @available attribute in Swift
How to use the @available attribute in Swift
- 25. Links for June 25, 2023
Links for June 25, 2023
- 25. Using URLSession with async/await in Swift
Using URLSession with async/await in Swift
- 25. Learn what progress view is and how to use it.
SwiftUI ProgressView
- 25. Swift In-Out (inout) Parameters
Swift In-Out (inout) Parameters
- 25. Swift DocC: How to Host Document Archive on Web Server and GitHub Pages
Swift DocC: How to Host Document Archive on Web Server and GitHub Pages
- 25. Use Xcode to develop a multiplatform app
Use Xcode to develop a multiplatform app
- 25. Merge Sort In Swift
Merge Sort In Swift
- 25. Visualise the Matthew Effect with Swift Charts
Visualise the Matthew Effect with Swift Charts
- 25. Three Ways to Refactor Massive SwiftUI Views
Three Ways to Refactor Massive SwiftUI Views
- 25. How to use custom names for Swift properties when decoding JSON data
How to use custom names for Swift properties when decoding JSON data
- 25. Mastering charts in SwiftUI: Legends.
Mastering charts in SwiftUI: Legends.
- 24. Links for June 24, 2023
Links for June 24, 2023
- 24. How to Create an iOS Lock Screen Widget?
How to Create an iOS Lock Screen Widget?
- 24. Modern SwiftUI: Testing
Modern SwiftUI: Testing
- 24. How to Get Started with FMDB using Swift
How to Get Started with FMDB using Swift
- 24. How to Hide Navigation Bar on Scroll in UIKit
How to Hide Navigation Bar on Scroll in UIKit
- 24. Swift fileprivate vs private
Swift fileprivate vs private
- 01. Understanding Swift Concurrency’s AsyncStream
Understanding Swift Concurrency’s AsyncStream
- 01. Links for May 1, 2023
Links for May 1, 2023
- 01. How to Fetch and Show Remote Data on a Widget?
How to Fetch and Show Remote Data on a Widget?
- 01. How to Update or Refresh a Widget?
How to Update or Refresh a Widget?
- 01. Adapters in Swift
Adapters in Swift
- 01. SwiftUI custom layout with Simple Layout Engine
SwiftUI custom layout with Simple Layout Engine
- 01. Sharing data with UIActivityViewController - tips & tricks
Sharing data with UIActivityViewController - tips & tricks
- 01. Iterating over web socket messages with async / await in Swift
Iterating over web socket messages with async / await in Swift
- 26. Nested reusability in SwiftUI
Nested reusability in SwiftUI
- 26. Links for April 26, 2023
Links for April 26, 2023
- 26. SwiftUI Views Are Lists
SwiftUI Views Are Lists
- 25. Links for April 25, 2023
Links for April 25, 2023
- 25. SwiftUI views versus modifiers
SwiftUI views versus modifiers
- 25. Using a UIKit or AppKIt View in SwiftUI
Using a UIKit or AppKIt View in SwiftUI
- 25. Mastering charts in SwiftUI. Basics.
Mastering charts in SwiftUI. Basics.
- 25. Embrace Swift generics
Embrace Swift generics
- 25. How to Deprecate old API in Swift
How to Deprecate old API in Swift
- 25. Copy on Write in Swift explained with examples
Copy on Write in Swift explained with examples
- 25. How to Create a Checkbox in SwiftUI Using ToggleStyle
How to Create a Checkbox in SwiftUI Using ToggleStyle
- 18. View Composition using ViewModifiers in SwiftUI
View Composition using ViewModifiers in SwiftUI
- 18. Links for March 18, 2023
Links for March 18, 2023
- 18. SwiftUI Tables Quick Guide
SwiftUI Tables Quick Guide
- 18. How to create a Popover in iOS using Swift
How to create a Popover in iOS using Swift | John Codeos - Blog with Free iOS & Android Development Tutorials
- 18. SwiftUI Tip: Always correct corner radius for subviews
SwiftUI Tip: Always correct corner radius for subviews
- 18. How to: Implementing “Shared with You” APIs
How to: Implementing “Shared with You” APIs
- 18. Semantic Colors and Styles
Semantic Colors and Styles
- 18. Building a Scrollable Custom Tab Bar in SwiftUI
Building a Scrollable Custom Tab Bar in SwiftUI
- 04. Links for March 4, 2023
Links for March 4, 2023
- 04. Recreating The iOS Timer App In SwiftUI
Recreating The iOS Timer App In SwiftUI
- 26. You don't need protocols
You don't need protocols
- 26. Links for February 26, 2023
Links for February 26, 2023
- 26. Storing a Swift Enum in Core Data
Storing a Swift Enum in Core Data
- 26. How To Speed Up Swift By Ordering Conformances
How To Speed Up Swift By Ordering Conformances
- 26. How to Create Configurable Widgets With Static Options?
How to Create Configurable Widgets With Static Options?
- 26. Using User Defaults to store preferences in Swift
Using User Defaults to store preferences in Swift
- 26. Mastering charts in SwiftUI Customizations
Mastering charts in SwiftUI Customizations
- 26. EnumArray in Swift
EnumArray in Swift
- 26. Build a Live Barcode and Text Scanner iOS App with SwiftUI & VisionKit iOS 16 API
Build a Live Barcode and Text Scanner iOS App with SwiftUI & VisionKit iOS 16 API
- 23. Using ToggleStyle to Build Custom Toggles in SwiftUI
Using ToggleStyle to Build Custom Toggles in SwiftUI
- 23. Links for February 23, 2023
Links for February 23, 2023
- 23. Learn how to use DateFormatter to parse, format, and extract components from Dates.
Swift DateFormatter Cheatsheet [+Formulas, Parsing]
- 23. UIHostingConfiguration can cause UICollectionViewRecursion
UIHostingConfiguration can cause UICollectionViewRecursion
- 11. Observing the content offset of a SwiftUI ScrollView
Observing the content offset of a SwiftUI ScrollView
- 11. Links for February 11, 2023
Links for February 11, 2023
- 11. Computer archaeology with a modern language (and a bit more runtime work)
Rescuing Files From Classic Mac OS...with Swift!
- 15. Building custom layout in SwiftUI. LayoutValueKey.
Building custom layout in SwiftUI. LayoutValueKey. | Swift with Majid
- 15. Links for January 15, 2023
Links for January 15, 2023
- 15. OptionSet in Swift explained with code examples
OptionSet in Swift explained with code examples - SwiftLee
- 15. Meet distributed actors in Swift
Meet distributed actors in Swift | WWDC NOTES
- 15. Presenting Sheets Of Various Heights In SwiftUI
Presenting Sheets Of Various Heights In SwiftUI – SerialCoder.dev
- 15. How to allow landscape for single screen in your UIKit app
How to allow landscape for single screen in your UIKit app | Filip Němeček
- 15. Mastering NavigationStack in SwiftUI. NavigationPath.
Mastering NavigationStack in SwiftUI. NavigationPath. | Swift with Majid
- 15. How to use FormatStyle to restrict TextField input in SwiftUI
How to use FormatStyle to restrict TextField input in SwiftUI
- 15. How to remove the Last row separator in SwiftUI List
How to remove the Last row separator in SwiftUI List | Sarunw
- 08. Links for January 8, 2023
Links for January 8, 2023
- 08. Mastering Dynamic Island in SwiftUI
Mastering Dynamic Island in SwiftUI
- 08. SwiftUI Labeled Content
SwiftUI Labeled Content
- 08. Sheets in SwiftUI explained with code examples
Sheets in SwiftUI explained with code examples
- 08. How to check if an Element is in an Array in Swift
How to check if an Element is in an Array in Swift
- 08. Enum explained in-depth with code examples in Swift
Enum explained in-depth with code examples in Swift
- 03. Links for January 3, 2023
Links for January 3, 2023
- 03. SwiftUI Scrollable View Backgrounds
SwiftUI Scrollable View Backgrounds
- 02. Links for January 2, 2023
Links for January 2, 2023
- 02. SwiftUI Multi-line Text Fields
SwiftUI Multi-line Text Fields
- 02. A powerful UINavigationController API that you might not know about
A powerful UINavigationController API that you might not know about
- 20. Links for December 20, 2022
Links for December 20, 2022
- 20. Using Core Data With CloudKit
Using Core Data With CloudKit
- 20. The craft of SwiftUI API design: Progressive disclosure
The craft of SwiftUI API design: Progressive disclosure
- 20. What is Swift Computed Property
What is Swift Computed Property
- 20. What is the difference between #available and @available
What is the difference between #available and @available
- 20. Providing a default value for a SwiftUI Binding
Providing a default value for a SwiftUI Binding
- 20. Applying complex gestures to a SwiftUI view
Applying complex gestures to a SwiftUI view
- 20. What is the difference between List and ForEach in SwiftUI
What is the difference between List and ForEach in SwiftUI
- 20. Showing a Swift Enum’s Values in a SwiftUI Picker
Showing a Swift Enum’s Values in a SwiftUI Picker
- 20. The Two Faces of Codable/Serde
The Two Faces of Codable/Serde
- 20. Searchable vs. Textfield in a sheet deployed with presentationDetents
Searchable vs. Textfield in a sheet deployed with presentationDetents
- 20. Testing async/await exceptions
Testing async/await exceptions
- 20. Understanding SwiftUI view lifecycles
Understanding SwiftUI view lifecycles
- 20. clipped() doesn’t affect hit testing
clipped() doesn’t affect hit testing
- 20. Where View.task gets its main-actor isolation from
Where View.task gets its main-actor isolation from
- 20. Add name for debugging
Add name for debugging
- 20. SortComparator and SortDescriptor
SortComparator and SortDescriptor
- 20. ARC in Swift: Basics and beyond
ARC in Swift: Basics and beyond
- 20. Meet Background Assets
Meet Background Assets
- 20. Use Xcode for server-side development
Use Xcode for server-side development
- 20. Hello Swift Charts
Hello Swift Charts
- 10. Links for December 10, 2022
Links for December 10, 2022
- 10. Add color gradients and drop shadows to your SwiftUI views.
SwiftUI gradients and shadow styles
- 09. What’s next for Foundation - Development / Core Libraries - Swift Forums
What’s next for Foundation - Development / Core Libraries - Swift Forums
- 09. Links for December 9, 2022
Links for December 9, 2022
- 03. Links for December 3, 2022
Links for December 3, 2022
- 03. SwiftUI ViewThatFits makes it easier to build adaptive layouts.
SwiftUI View That Fits
- 28. SwiftUI Dismissing The Keyboard
SwiftUI Dismissing The Keyboard
- 28. Links for November 28, 2022
Links for November 28, 2022
- 27. Links for November 27, 2022
Links for November 27, 2022
- 27. Combining opaque return types with primary associated types
Combining opaque return types with primary associated types
- 27. SwiftUI zIndex: Everything you need to know
SwiftUI zIndex: Everything you need to know
- 27. How to create Rounded Corners Button in UIKit
How to create Rounded Corners Button in UIKit
- 27. SortComparator and SortDescriptor
SortComparator and SortDescriptor
- 27. How to get index and value from for loop in Swift
How to get index and value from for loop in Swift
- 27. For loop in SwiftUI using ForEach
For loop in SwiftUI using ForEach
- 22. Alternate App Icon Configuration in Xcode
Alternate App Icon Configuration in Xcode
- 22. Links for November 22, 2022
Links for November 22, 2022
- 22. @ViewBuilder usage explained with code examples
@ViewBuilder usage explained with code examples
- 22. How to save enum in UserDefaults using Swift
How to save enum in UserDefaults using Swift
- 14. Links for November 14, 2022
Links for November 14, 2022
- 14. Using The Proxy Pattern In Swift 5
Using The Proxy Pattern In Swift 5
- 13. Links for November 13, 2022
Links for November 13, 2022
- 13. Supporting universal links in a SwiftUI application
Supporting universal links in a SwiftUI application
- 13. SwiftUI Progress View
SwiftUI Progress View
- 13. How to change a navigation bar color in SwiftUI on iOS 16
How to change a navigation bar color in SwiftUI on iOS 16
- 13. Loop n times in Swift
Loop n times in Swift
- 13. The power of Compositional Layout
The power of Compositional Layout
- 13. How to Use SwiftUI Gauge and Create Custom Gauge Styles
How to Use SwiftUI Gauge and Create Custom Gauge Styles
- 13. Pitfall of Nested ObservableObject
Pitfall of Nested ObservableObject
- 06. Links for November 6, 2022
Links for November 6, 2022
- 06. Server Guides Now on Swift.org
Server Guides Now on Swift.org
- 06. Host and Automate your DocC documentation
Host and Automate your DocC documentation
- 06. Replacing if let in Swift 5.7
Replacing if let in Swift 5.7
- 06. Memory management in Combine
Memory management in Combine
- 06. IMAP is such a pain to implement. Glad someone did this 😊
Announcing SwiftNIO IMAP
- 03. Links for November 3, 2022
Links for November 3, 2022
- 03. How to get notification userInfo at launch
How to get notification userInfo at launch
- 03. How to Encode Null Using JSONEncoder?
How to Encode Null Using JSONEncoder?
- 02. Links for November 2, 2022
Links for November 2, 2022
- 02. Make your SwiftUI view modifiers safer
Make your SwiftUI view modifiers safer
- 02. Type Safety with Enums
Type Safety with Enums
- 31. Links for October 31, 2022
Links for October 31, 2022
- 31. @AppStorage is a property wrapper for UserDefaults, provided by SwiftUI framework. It is very simple to use, but in practice, some simple things are not obvious.
AppStorage, and observing a Binding
- 31. Someone complained that putting Swift in the OS has only made things worse for developers. That's valid, but misses the point.
Swift was always going to be part of the OS
- 27. Links for August 27, 2022
Links for August 27, 2022
- 27. How to use popover in SwiftUI
How to use popover in SwiftUI
- 27. How to select in List in SwiftUI
How to select in List in SwiftUI
- 27. How to Use the SwiftUI PhotosPicker
How to Use the SwiftUI PhotosPicker
- 27. Eager Grids with SwiftUI
Eager Grids with SwiftUI
- 27. Bottom sheet API in SwiftUI
Bottom sheet API in SwiftUI
- 27. Some keyword in Swift: Opaque types explained with code examples
Some keyword in Swift: Opaque types explained with code examples
- 27. Saving Passwords in the Keychain in Swift
Saving Passwords in the Keychain in Swift
- 23. Swift Tuple Overloads
Swift Tuple Overloads
- 23. Links for August 23, 2022
Links for August 23, 2022
- 20. Understanding LLDB print commands for iOS debugging with Xcode
Understanding LLDB print commands for iOS debugging with Xcode
- 20. Links for August 20, 2022
Links for August 20, 2022
- 20. How to Save, Fetch, Update and Delete data from Core Data using Swift
How to Save, Fetch, Update and Delete data from Core Data using Swift
- 17. Links for August 17, 2022
Links for August 17, 2022
- 17. Better way to get paths to system directories in iOS 16
Better way to get paths to system directories in iOS 16
- 10. Links for August 10, 2022
Links for August 10, 2022
- 10. Airbnb Swift style guide on iOS Dev Tools
Airbnb Swift style guide on iOS Dev Tools
- 09. Using .allSatisfy in Swift
Using .allSatisfy in Swift
- 09. Links for August 9, 2022
Links for August 9, 2022
- 01. Links for August 1, 2022
Links for August 1, 2022
- 01. SwiftUI Canvas, Path, Shape, and View
SwiftUI Canvas, Path, Shape, and View
- 29. Links for July 29, 2022
Links for July 29, 2022
- 29. Uncompressing Folders in Swift
Uncompressing Folders in Swift
- 29. Building an Accessible Custom Tab Bar
Building an Accessible Custom Tab Bar
- 29. Overloading & Creating New Operators In Swift 5
Overloading & Creating New Operators In Swift 5
- 29. Using ImageRenderer to Convert SwiftUI Views into Images
Using ImageRenderer to Convert SwiftUI Views into Images
- 23. Links for July 23, 2022
Links for July 23, 2022
- 23. Generics in Swift explained with code examples
Generics in Swift explained with code examples
- 17. Links for July 17, 2022
Links for July 17, 2022
- 17. The Facade Design Pattern In Swift
The Facade Design Pattern In Swift
- 15. Links for July 15, 2022
Links for July 15, 2022
- 15. Swift language announcements from WWDC22
Swift language announcements from WWDC22
- 08. Thoughts on Swift and Objective-C
Thoughts on Swift and Objective-C
- 08. Links for July 8, 2022
Links for July 8, 2022
- 08. New if let shorthand for optional binding
New if let shorthand for optional binding
- 29. Swift-based Interpreter framework for Lisp-based extension and scripting languages on macOS and iOS
Swift-based Interpreter framework for Lisp-based extension and scripting languages on macOS and iOS
- 29. Links for June 29, 2022
Links for June 29, 2022
- 20. Links for June 20, 2022
Links for June 20, 2022
- 20. Announcing the Language Workgroup
Announcing the Language Workgroup
- 20. Swift Charts
Michael Tsai - Blog - Swift Charts
- 11. Links for June 11, 2022
Links for June 11, 2022
- 11. WorldWideWeb, Part II • The Breakroom
WorldWideWeb, Part II • The Breakroom
- 10. Links for June 10, 2022
Links for June 10, 2022
- 10. How to allow multiple selection in List in SwiftUI
How to allow multiple selection in List in SwiftUI
- 31. Links for May 31, 2022
Links for May 31, 2022
- 31. Measuring app performance in Swift
Measuring app performance in Swift
- 20. Building a Custom Combine Operator for Exponential Backoff
Building a Custom Combine Operator for Exponential Backoff
- 20. Links for May 20, 2022
Links for May 20, 2022
- 20. How @MainActor works
How @MainActor works
- 04. Default Arguments and Label-based Overloading
Default Arguments and Label-based Overloading
- 04. Links for May 4, 2022
Links for May 4, 2022
- 04. Assigning an expression to a variable with the same name
Assigning an expression to a variable with the same name
- 01. Links for May 1, 2022
Links for May 1, 2022
- 01. How to document your project with DocC
How to document your project with DocC
- 30. Links for April 30, 2022
Links for April 30, 2022
- 30. Code in ARM Assembly: Registers explained
Code in ARM Assembly: Registers explained
- 30. How to make simple async URLSession in Swift
How to make simple async URLSession in Swift
- 30. Unit testing Swift code that uses async/await
Unit testing Swift code that uses async/await
- 28. Links for April 28, 2022
Links for April 28, 2022
- 28. Swift actors tutorial - a beginner's guide to thread safe concurrency
Swift actors tutorial - a beginner's guide to thread safe concurrency
- 18. Links for April 18, 2022
Links for April 18, 2022
- 18. Introducing Plot Components: A new way to build HTML pages using Swift
Introducing Plot Components: A new way to build HTML pages using Swift
- 18. Creating Enums with Custom Raw Type in Swift
Creating Enums with Custom Raw Type in Swift
- 18. How to use subscript in Swift
How to use subscript in Swift
- 15. The Golden Rules of weak self
The Golden Rules of weak self
- 15. Links for April 15, 2022
Links for April 15, 2022
- 08. New approach to formatters in iOS 15
New approach to formatters in iOS 15
- 08. Links for April 8, 2022
Links for April 8, 2022
- 08. Quickly displaying the Swift version that ships with Xcode
Quickly displaying the Swift version that ships with Xcode
- 08. Every SwiftUI Environment Value explained
Every SwiftUI Environment Value explained
- 08. How to effectively refactor MVC code and add unit tests
How to effectively refactor MVC code and add unit tests
- 08. Combining protocols in Swift
Combining protocols in Swift
- 08. How to use Label in SwiftUI custom view
How to use Label in SwiftUI custom view
- 08. Mastering List in SwiftUI
Mastering List in SwiftUI
- 08. How to parse large JSON Dictionary in Swift
How to parse large JSON Dictionary in Swift
- 08. With Swift 5.5 new concurrency syntax, many frameworks have been updated. This post cover the basic URLSession operations.
URLSession with new async/await
- 10. Links for February 10, 2022
Links for February 10, 2022
- 10. Structured Concurrency in Swift 5.5
Structured Concurrency in Swift 5.5
- 07. Understanding opaque types in Swift
Understanding opaque types in Swift
- 07. Links for February 7, 2022
Links for February 7, 2022
- 06. Links for February 6, 2022
Links for February 6, 2022
- 06. How to pop multiple level with NavigationView and NavigationLink in SwiftUI
How to pop multiple level with NavigationView and NavigationLink in SwiftUI
- 06. Memory management when using async/await in Swift
Memory management when using async/await in Swift
- 31. Swift actors: How do they work, and what kinds of problems do they solve?
Swift actors: How do they work, and what kinds of problems do they solve?
- 31. Links for January 31, 2022
Links for January 31, 2022
- 31. Swift Foundation Formatter Improvements
Swift Foundation Formatter Improvements
- 29. Automatically retrying an asynchronous Swift Task
Automatically retrying an asynchronous Swift Task
- 29. Links for January 29, 2022
Links for January 29, 2022
- 26. Links for January 26, 2022
Links for January 26, 2022
- 26. How I build this website
- 26. Swift Package Collections
Swift Package Collections
- 14. Links for January 14, 2022
Links for January 14, 2022
- 14. The Swift Runtime: Enums
The Swift Runtime: Enums
- 06. Links for January 6, 2022
Links for January 6, 2022
- 06. The Swift Runtime: Class Metadata Initialization
The Swift Runtime: Class Metadata Initialization
- 02. Links for January 2, 2022
Links for January 2, 2022
- 02. Using Combine’s share operator to avoid duplicate work
Using Combine’s share operator to avoid duplicate work
- 01. Links for January 1, 2022
Links for January 1, 2022
- 01. Building async and concurrent versions of forEach and map
Building async and concurrent versions of forEach and map
- 01. Using count vs isEmpty to check whether a collection contains any elements
Using count vs isEmpty to check whether a collection contains any elements
- 29. Links for December 29, 2021
Links for December 29, 2021
- 29. What role do Tasks play within Swift’s concurrency system?
What role do Tasks play within Swift’s concurrency system?
- 15. Swift Playgrounds 4 is here, and it’s a thing of beauty – Hacking with Swift
Swift Playgrounds 4 is here, and it’s a thing of beauty – Hacking with Swift
- 15. Links for December 15, 2021
Links for December 15, 2021
- 21. Links for October 21, 2021
Links for October 21, 2021
- 21. OOOH A literal Regex in Swift would be great.
Michael Tsai - Blog - Swift Declarative String Processing Pitch
- 08. Programmatic navigation in SwiftUI
Programmatic navigation in SwiftUI | Swift by Sundell
- 08. Links for October 8, 2021
Links for October 8, 2021
- 08. SwiftLint for Swift Packages
SwiftLint for Swift Packages
- 18. In iOS 15 you can set limits on the minimum and maximum sizes of dynamic type.
Restricting Dynamic Type Sizes
- 18. Links for September 18, 2021
Links for September 18, 2021
- 17. How-to: Create compile time reminders in Xcode | Recoursive
How-to: Create compile time reminders in Xcode | Recoursive
- 17. Links for September 17, 2021
Links for September 17, 2021
- 25. Using static protocol APIs to create conforming instances
Using static protocol APIs to create conforming instances
- 25. Links for August 25, 2021
Links for August 25, 2021
- 22. Links for August 22, 2021
Links for August 22, 2021
- 22. Backporting new features with @_alwaysEmitIntoClient
Backporting new features with @_alwaysEmitIntoClient
- 21. AsyncSequence and effectful read-only properties combine to make something beautiful.
My favorite new Swift API from iOS 15
- 21. Links for August 21, 2021
Links for August 21, 2021
- 21. Handling links with SwiftUI's openURL
Handling links with SwiftUI's openURL
- 16. Links for August 16, 2021
Links for August 16, 2021
- 16. Defining dynamic colors in Swift
Defining dynamic colors in Swift
- 15. Links for August 15, 2021
Links for August 15, 2021
- 15. Different ways to observe properties in Swift
Different ways to observe properties in Swift
- 11. Links for August 11, 2021
Links for August 11, 2021
- 11. Using ‘@unknown default’ within switch statements
Using ‘@unknown default’ within switch statements
- 06. Links for August 6, 2021
Links for August 6, 2021
- 06. Getting Started with the SPM Manifest file
Package.swift - Getting Started with the SPM Manifest file - Learning Swift
- 06. I had no idea this was a thing!
Attaching property wrappers to function arguments
- 06. How Swift runs an async executable – Ole Begemann
How Swift runs an async executable – Ole Begemann
- 06. Throwing and asynchronous Swift properties
Throwing and asynchronous Swift properties
- 01. Links for August 1, 2021
Links for August 1, 2021
- 01. Deep Dive into Swift 5.5 Async/await Concurrency Model
Deep Dive into Swift 5.5 Async/await Concurrency Model
- 11. Links for July 11, 2021
Links for July 11, 2021
- 11. In Swift 5.5, the Swift Package Manager adds support for package collections
Package Collections
- 11. What is structured concurrency?
What is structured concurrency? – Ole Begemann
- 05. A Swift developer’s WWDC dreams - 2021 edition
A Swift developer’s WWDC dreams - 2021 edition
- 05. Links for June 5, 2021
Links for June 5, 2021
- 02. The flexibility of enumerated is Swift is really amazing, and is one of the reasons I love it.
Avoiding problematic cases when using Swift enums
- 02. Links for June 2, 2021
Links for June 2, 2021
- 24. Links for May 24, 2021
Links for May 24, 2021
- 24. I would have thought “when it is the only statement”, but that’s not quite true.
Q&A: When can Swift’s return keyword be omitted?
- 12. Links for May 12, 2021
Links for May 12, 2021
- 12. Deciding what DispatchQueue to run a completion handler on
Deciding what DispatchQueue to run a completion handler on
- 03. Links for May 3, 2021
Links for May 3, 2021
- 03. Controlling the timing of a Combine pipeline
Controlling the timing of a Combine pipeline
- 29. Links for April 29, 2021
Links for April 29, 2021
- 29. What's new in Swift Package Manager in Swift 5.4
What's new in Swift Package Manager in Swift 5.4
- 16. A sneak peek into SwiftUI's graph
A sneak peek into SwiftUI's graph
- 16. Links for April 16, 2021
Links for April 16, 2021
- 16. Using Combine’s futures and subjects
Using Combine’s futures and subjects
- 10. Links for April 10, 2021
Links for April 10, 2021
- 10. Using pipes in Swift scripts
Using pipes in Swift scripts
- 10. I love Dave’s explain arion of these things. Really great.
Core Data and SwiftUI
- 16. Encoding and decoding Swift dictionaries with custom key types
Encoding and decoding Swift dictionaries with custom key types
- 16. Links for March 16, 2021
Links for March 16, 2021
- 14. Links for March 14, 2021
Links for March 14, 2021
- 14. A quick review of some font APIs that work for both UIKit and SwiftUI.
Tweaking The iOS System Fonts
- 07. Links for March 7, 2021
Links for March 7, 2021
- 07. Automatic handling of property wrapper default values
Automatic handling of property wrapper default values
- 06. Links for March 6, 2021
Links for March 6, 2021
- 06. Be careful with Obj-C bridging in Swift
Be careful with Obj-C bridging in Swift
- 03. Links for March 3, 2021
Links for March 3, 2021
- 03. Unit testing Combine-based Swift code
Unit testing Combine-based Swift code
- 03. How to Work with SwiftUI Maps and Annotations
How to Work with SwiftUI Maps and Annotations
- 25. Links for February 25, 2021
Links for February 25, 2021
- 25. Ignoring invalid JSON elements when using Codable
Ignoring invalid JSON elements when using Codable
- 17. Links for February 17, 2021
Links for February 17, 2021
- 17. Always good to make sure your networking is configured for your specific use case.
URLSessionConfiguration Quick Guide
- 14. Links for February 14, 2021
Links for February 14, 2021
- 14. Using Diffable Data Source with Collection Views
Using Diffable Data Source with Collection Views
- 14. Swift is really fantastic at memory management, to the point that you rarely have to think about it, there are some cases like this where you have to give it some thought.
Managing self and cancellable references when using Combine
- 14. Lots of new stuff in Swift 5.4!
What’s new in Swift 5.4?
- 30. Links for January 30, 2021
Links for January 30, 2021
- 30. Clears up some confusion for me about property wrappers
Which SwiftUI property wrapper to choose in any situation
- 30. Widget Background and Accent Color
Widget Background and Accent Color
- 20. Performing POST and file upload requests using URLSession
Performing POST and file upload requests using URLSession
- 20. Links for January 20, 2021
Links for January 20, 2021
- 20. Creating custom query functions using key paths
Creating custom query functions using key paths
- 06. This syntax is so odd and backwards and weird. But handy.
How Do I Write If Case Let in Swift?
- 06. Links for January 6, 2021
Links for January 6, 2021
- 06. Links for October 6, 2020
Links for October 6, 2020
- 06. Amusing
Michael Tsai - Blog - 5 GUIs
- 01. Very Handy
The Power of the Hosting+Representable Combo - The SwiftUI Lab
- 01. Links for August 1, 2020
Links for August 1, 2020