惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
News | PayPal Newsroom
U
Unit 42
MongoDB | Blog
MongoDB | Blog
IT之家
IT之家
A
About on SuperTechFans
Blog — PlanetScale
Blog — PlanetScale
P
Privacy & Cybersecurity Law Blog
V
V2EX
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Know Your Adversary
Know Your Adversary
L
LINUX DO - 热门话题
GbyAI
GbyAI
T
Threat Research - Cisco Blogs
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
P
Palo Alto Networks Blog
Recent Commits to openclaw:main
Recent Commits to openclaw:main
腾讯CDC
WordPress大学
WordPress大学
K
Kaspersky official blog
The GitHub Blog
The GitHub Blog
Spread Privacy
Spread Privacy
Simon Willison's Weblog
Simon Willison's Weblog
D
DataBreaches.Net
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
M
MIT News - Artificial intelligence
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
C
Check Point Blog
阮一峰的网络日志
阮一峰的网络日志
TaoSecurity Blog
TaoSecurity Blog
Latest news
Latest news
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
N
News and Events Feed by Topic
NISL@THU
NISL@THU
博客园 - 【当耐特】
Microsoft Azure Blog
Microsoft Azure Blog
PCI Perspectives
PCI Perspectives
T
Threatpost
C
CXSECURITY Database RSS Feed - CXSecurity.com
Scott Helme
Scott Helme
P
Proofpoint News Feed
C
CERT Recently Published Vulnerability Notes
大猫的无限游戏
大猫的无限游戏
Help Net Security
Help Net Security
C
Cybersecurity and Infrastructure Security Agency CISA
H
Hackread – Cybersecurity News, Data Breaches, AI and More
W
WeLiveSecurity
小众软件
小众软件
S
Secure Thoughts
T
The Exploit Database - CXSecurity.com
F
Full Disclosure

Comments for Michael Tsai

Michael Tsai - Blog - Dissecting Apple’s Sparse Image Format (ASIF) Michael Tsai - Blog - What to Do With a Hot Mac Michael Tsai - Blog - macOS California Adventure Michael Tsai - Blog - Shutting Down Notion Mail Michael Tsai - Blog - Export Control for Fable and Mythos Michael Tsai - Blog - Mac App Store Search Not Showing Mac Apps Michael Tsai - Blog - Boom Mobile Restructuring Michael Tsai - Blog - “If You Can’t Stand By a Feature, You Shouldn’t Launch It.” Michael Tsai - Blog - Apple Hardware Price Hikes Michael Tsai - Blog - Tony Krueger, RIP Michael Tsai - Blog - WebKit Always Enables the Copy Menu Item in Every App Michael Tsai - Blog - Xcode 27’s Device Hub Michael Tsai - Blog - Swift 6.4 Michael Tsai - Blog - RCS in iOS 27 Michael Tsai - Blog - SwiftData in appleOS 27 Michael Tsai - Blog - Bar None 1.0 Michael Tsai - Blog - CrashReportExtension Michael Tsai - Blog - SwiftUI in appleOS 27 Michael Tsai - Blog - Apple Clearing App Store Clutter Michael Tsai - Blog - Mandatory Apple Intelligence Michael Tsai - Blog - macOS Touch Michael Tsai - Blog - UIKit in iOS 27 Michael Tsai - Blog - Runaway Spotlight With Pages Document on iCloud Drive Michael Tsai - Blog - macOS 27 to Drop Support for AirPort and Time Capsule Backups Michael Tsai - Blog - WWDC 2026 Links Michael Tsai - Blog - SpaceX Acquires xAI, Goes Public, Acquires Cursor Michael Tsai - Blog - Apple Intelligence in appleOS 27 Michael Tsai - Blog - Apple Foundation Models in appleOS 27 Michael Tsai - Blog - Agentic Password Updates Michael Tsai - Blog - Photos AI in appleOS 27 Michael Tsai - Blog - AI-Generated Shortcuts Michael Tsai - Blog - Apple’s Dormant CUPS Michael Tsai - Blog - The End of Pinboard? Michael Tsai - Blog - Anticipating the Coming USB-C iPhone Backlash Michael Tsai - Blog - App Store Personalized Recommendations and Keylogging Michael Tsai - Blog - Safari 27 Announced Michael Tsai - Blog - Apple Creator Studio Now Shipping Michael Tsai - Blog - Rewriting Apple’s TrueType Hinting Interpreter in Swift Michael Tsai - Blog - Rewriting Notion in SwiftUI Michael Tsai - Blog - FastSpring Store Unexpectedly Offline Michael Tsai - Blog - Locked Out of Apple Account Due to Gift Card Michael Tsai - Blog - No Siri AI in EU Michael Tsai - Blog - Siri AI Announced Michael Tsai - Blog - Child Safety Features in appleOS 27 Michael Tsai - Blog - Golden Gate Window Corners Michael Tsai - Blog - Golden Gate Sidebars and Toolbars Michael Tsai - Blog - Golden Gate Menu Icons Michael Tsai - Blog - Liquid Glass 27 Icons Michael Tsai - Blog - Liquid Glass 27 Slider Michael Tsai - Blog - Glow Leopard Michael Tsai - Blog - Xcode 27 Announced Michael Tsai - Blog - macOS 27 Golden Gate Announced Michael Tsai - Blog - iPadOS 27 Announced Michael Tsai - Blog - watchOS 27 Announced Michael Tsai - Blog - WWDC 2026 Keynote Michael Tsai - Blog - Sirius Pomodoro Michael Tsai - Blog - WWDC 2026 Preview Michael Tsai - Blog - Xogot for Mac Beta Michael Tsai - Blog - Fixing mediaanalysisd Storage and CPU Use Michael Tsai - Blog - Adobe Modifies Your Hosts File for Their Analytics Michael Tsai - Blog - WWDC 2026 Wish Lists Michael Tsai - Blog - macOS Needs Its Spaces Grid Back Michael Tsai - Blog - WhisperPad Rejected From the Mac App Store Michael Tsai - Blog - Restoring Contacts From a Time Machine Backup Michael Tsai - Blog - Bricking Microsoft Office 2019 Michael Tsai - Blog - No Bounty for Mysk Michael Tsai - Blog - fsck_hfs Cache Exhaustion Bug Michael Tsai - Blog - macOS 26.5.1 Michael Tsai - Blog - iOS 26.5.1 Michael Tsai - Blog - BBEdit 16 Michael Tsai - Blog - Nisus Probably Moribund Michael Tsai - Blog - Pair Networks Price Increase Michael Tsai - Blog - Taphouse 1.5 Michael Tsai - Blog - More App Store Ad Spots Michael Tsai - Blog - StopTheMadness Pro 26 Michael Tsai - Blog - Mac External Display Support Reference Michael Tsai - Blog - Bartender Pro Michael Tsai - Blog - ARC Overhead in Swift Sorting Michael Tsai - Blog - Iris 1.0 Michael Tsai - Blog - Halide Mark III Michael Tsai - Blog - !Camera Michael Tsai - Blog - Project Indigo Michael Tsai - Blog - Unpro Camera Michael Tsai - Blog - MailMate License Model: One Year Later Michael Tsai - Blog - Iris Rejected From the App Store Michael Tsai - Blog - OpenAI Model’s Proof of Erdős Unit Distance Problem Michael Tsai - Blog - Apps for YouTube℠™®•! Michael Tsai - Blog - Google’s Intelligent Search Box Michael Tsai - Blog - Catalina Data Protections Break File Sharing Michael Tsai - Blog - Apple Asks Supreme Court to Review Epic Ruling Michael Tsai - Blog - Stats Visualization in Apple Sports Michael Tsai - Blog - Steve Jobs in Exile Michael Tsai - Blog - Leaving CloudKit Michael Tsai - Blog - Lawsuits Claim OpenAI and Perplexity Shared User Data for Advertising Michael Tsai - Blog - Inkwell Rejected From the App Store Michael Tsai - Blog - Updating Shared Shortcuts Michael Tsai - Blog - Claude Desktop App Michael Tsai - Blog - OmniFocus 4.8.10 Michael Tsai - Blog - Chrome’s Huge weights.bin File Michael Tsai - Blog - Gemini App for Mac
Michael Tsai - Blog - Where Did SwiftUI Leave You Hanging?
Michael J. Tsai · 2026-06-05 · via Comments for Michael Tsai

Keren R. Bell:

This is a call to join the topic-of-the-month for the Swift Blog Carnival!

[…]

What do you LOVE about SwiftUI? What boggles your mind about it?

David Bureš:

.sheet is STILL not animatable (a feature since the first OSX release)

[…]

Toolbar item placement is completely broken.

[…]

.searchable is a complete mess that shouldn’t be a thing at all

[…]

Due to a conflict between List’s aggressive view destruction on scroll, and the way .task works, the millisecond a view that calls an API to load and parse a short string disappears, that already parsed string gets de-assigned. Once that particular list item appears again, it has to perform the extremely expensive API call and parsing again. Instead of just saving a 10-character string to memory. […] This leads to funny bugs, such as scrolling too fast through a list that’s made up of only text making the whole Mac freeze up and crash

Patrick McConnell:

SwiftUI is just too incomplete, inflexible and inextensible. It’s also great and that’s what makes this so frustrating.

[…]

Developers used to get Sherlocked when Apple would copy a third party apps features into the OS or packed apps. Now we get road blocked where only Apple can make use of a feature leaving us on the outside left trying to explain to users why Apples app has feature X,Y and Z and we don’t.

[…]

In a framework built on containers and modifiers just don’t go too deep into those containers or things may just break. Often this means your UI simply stops rendering on the screen. You may think you’re not doing anything wrong and then boom your code just doesn’t work.

[…]

Over the years we’ve all seen frameworks offering to create apps with no code or allowing you to write in your favorite language and run on all platforms. There were demos showing it working. None of those ever seem to pan out. They always come up short or perhaps they allow you to shoehorn in some native code to do something the framework authors don’t provide. If this sounds familiar this is what Apple is offering with SwiftUI. Looks impressive in canned demos, often falls short but you can just drop back to your old coding ways to fill in the blanks. I’ve always viewed this as a bunch of incomplete hacks. Now this is Apple standard practice.

[…]

I want SwiftUI to be so much more than it is currently. I want to make real Mac apps with it. I don’t want an iPad app in a Mac wrapper.

Mark Szymczyk:

I encountered the following limitations with SwiftUI:

  • Limited rich text editing experience.
  • The file exporter returns a folder URL when exporting to PDF.
  • SwiftUI lets you save documents in unwanted export file formats in Mac apps.

Nathan Manceaux-Panot:

Despite this simplicity, the first implementation of that list was shockingly badly-behaved. It was:

  1. Extremely slow (scrolling would cause multi-second freezes!)
  2. Visually broken in multiple ways (you’ll see)

[…]

This was honestly very entertaining code to write! I think it’s especially fascinating how it’s essentially imperative code, expressed through declarative modifiers. It’s an absolute mess to read, because on top of that mismatch between behavior and expression, respecting view tree constraints forced an unnatural order for everything. Glorious, and dismal.

[…]

And at the same time, it’s a maddening amount of work for such a basic user interface.

Sarah Reichelt:

Recently, I have seen multiple posts on Mastodon suggesting that SwiftUI is a failure, that nobody is using it, and that Apple should have focused on improving or replacing AppKit and UIKit instead of wasting everyone's time with SwiftUI. While I have great respect for some of the people saying these things, I disagree. I love using SwiftUI, I think a large number of developers are using it, and I want to explain what I find so great about it.

[…]

The reactive aspect of SwiftUI feels like magic! It allows me to have something like a stored setting with a default value, connected to a menu item with a checkmark, a toggle in a settings window, a button in the toolbar, and a switch on the main interface. SwiftUI keeps these all in sync without any effort on my part.

[…]

The AI proponents argue that if AI is writing all this verbose code, then there is no need for the more concise SwiftUI. While I have started using AI to write some code, I still review every line and the more the AI writes, the harder this becomes and the more likely it is that there will be un-detected bugs.

[…]

I don't want to imply that I think SwiftUI is perfect. I have struggled with various aspects of it, and I have had to find workarounds for some things that I want to do. Partly, this is due to the buggy nature of Apple software at the moment, but as someone who primarily works with Mac apps, I am feeling the pain of the lack of attention to the Mac. Again, this is not a SwiftUI problem, but a general Apple problem.

Ziga Dolar:

After shipping three small apps with SwiftUI (and actively working on the fourth), I’ve come to a simple conclusion: SwiftUI is great for narrowly scoped small apps.

[…]

Getting from zero to a working app that doesn’t look like a mess was incredibly fast - which helped with staying motivated. For me at least, being able to see interactive progress is part of what drove me to build apps, and SwiftUI makes that feedback loop a lot quicker (and since I struggle with staying motivated, that’s a big win).

[…]

Handling routing in SwiftUI is easier with a router and an enum of all main navigation destinations, that can easily be navigated to from anywhere.

And if you add a new screen or flow without handling it, the code won’t compile, so the compiler makes sure that nothing gets missed.

[…]

SwiftUI didn’t make me a better developer or remove complexity from app development. But it removed enough friction that I started shipping ideas again.

Keren R. Bell:

I still maintain my personal opinion which is, it’s ok that there’s some expectation to dip back to UIKit / AppKit, but yeah, Apple needs to stop shouting “SwiftUI all the way!” at us when it can really only do anywhere from 40%-70% of the way.

[…]

We love SwiftUI. It’s awesome, fast and simple. The allure of highly legible, nearly-natural-language interface writing is strong. But we don’t have to let our love and hopes for SwiftUI limit us: It’s one tool in a big box. It’s ok to use the ol’ WKWebView here and there.

Max Seelemann (Mastodon):

SwiftUI shipped in 2019, seven years ago. At WWDC 2022, Apple put up this infamous claim during the State of the Union[…] Here we are in 2026, right before another WWDC, four years and four major release cycles after that claim. How well does it hold today? In my opinion, we’re not even close. Modern SwiftUI can do a lot. But it’s still riddled with inexplicable bugs and weird limitations that prevent developers from building truly great experiences. Or at least, experiences that match system behavior.

[…]

Example 1: On iOS, SwiftUI can’t autofocus a text field in an appearing sheet to bring up the keyboard in the same animation.

[…]

Example 2: On macOS, drag & drop is essentially impossible to get right. Seven years in, we’re on the third major iteration of drag & drop in SwiftUI. […] Yet you still can’t have it all at once: reorder inside and drag out of the same view, plus drop validation when items may not be accepted, plus defining which drop operation (copy / move / link) a destination would cause. Let’s not dare to think of allowing Option to toggle between “move” and “copy”.

[…]

I believe Apple should tap into this invaluable resource of skilled developers with affection for its platforms and open-source SwiftUI. Sounds crazy. But is it? Swift has been open-source for years now, to great success. Let’s explore the thought, shall we?

Colin Cornaby:

This is not the only call for open source SwiftUI I’ve seen so I’m not trying to pick on it.

But my understanding is that SwiftUI cannot become open source. It touches too many private APIs. Even on platforms like macOS it’s no longer really a wrapper for AppKit, and it’s reaching deeper and deeper into private frameworks.

Previously:

Update (2026-06-09): Dominik Wagner:

However, the whole notion of SwiftUI always was flawed towards that direction. From day one I have never seen any SwiftUI based App that felt Mac-assed. It just emphasized the wrong tenets from day one. Consistent user delight and platform experience have been on the backseat since almost a decade now sadly.

6 Comments