Enabling drag reordering in lazy SwiftUI grids and stacks
A tutorial on implementing drag-and-drop reordering functionality for LazyVGrid, LazyHGrid, LazyVStack, and LazyHStack in SwiftUI.
Daniel Saidi is a freelance engineer specializing in app and product development for Apple platforms. He writes and builds open-source tools focused on Swift, SwiftUI, and modern iOS/macOS development.
105 articles from this blog
A tutorial on implementing drag-and-drop reordering functionality for LazyVGrid, LazyHGrid, LazyVStack, and LazyHStack in SwiftUI.
A guide to creating cleaner and more readable grid initialization code in SwiftUI using custom extensions for GridItem.
A SwiftUI Menu with an icon label can cause list separator lines to misalign. This article presents a custom menu style workaround to fix this visual bug.
A guide to extending Codable types in SwiftUI to work with AppStorage and SceneStorage for persistent data storage.
A guide to using semantic SwiftUI extensions to conditionally apply new iOS features while maintaining backward compatibility with older OS versions.
DeckKit 0.7 update introduces new SwiftUI shuffle animations and view modifiers for card deck interactions.
SwiftUIKit 3.3 update introduces Codable support for AppStorage, new list utilities, text editor styling, and image extensions for SwiftUI development.
A developer's initial thoughts and unanswered questions about Apple's newly announced Vision Pro headset, focusing on its name, field of view, and battery design.
RichTextKit update adds indentation support, grouped controls, and bug fixes for rich text editing in SwiftUI & UIKit.
A tutorial on using SwiftUI's ControlGroup to create visually cohesive bordered button groups, aligning them with segmented pickers for better UI design.
A guide to extending SwiftUI's DocumentGroup for iOS apps, enabling custom toolbars, onboarding screens, and deeper UIKit integration.
A developer details debugging a tricky App Group data sync bug between a SwiftUI app and its keyboard extension, involving deep links and multiple build configurations.
A recap of the third day of the Deep Dish Swift conference, covering new SwiftUI navigation, Server-Side Swift with GraphQL, presentation tools, and Live Activities.
A summary of Day 2 of the Deep Dish Swift conference, covering talks on company struggles, Swift algorithms, modular architecture, mentorship, and Swift Playgrounds.
A summary of the first day of the Deep Dish Swift indie dev conference, covering talks on app development, subscriptions, and CI/CD automation.
A tutorial on grouping and sorting collections in Swift using Dictionary(grouping:by:) and custom structures for ordered results.
Learn how to sort Git tags by semantic version using command-line options and global configuration settings.
A technical guide on managing status bar color schemes and visibility in SwiftUI, focusing on dynamic tint changes and hiding/showing the bar during scroll.
A tutorial on implementing a stretchy, sticky header for SwiftUI ScrollViews, similar to the one used in the Spotify app.
A technical guide on implementing scroll offset tracking in SwiftUI ScrollViews using preference keys and GeometryReader.