UIRefreshControl and UIStepper in Mac Catalyst

Published August 19, 2026
Abstract Mac Catalyst controls illustration

Apple's June 2026 UIKit updates include a welcome change for Mac Catalyst: UIRefreshControl and UIStepper are now fully supported in the Mac idiom.

These are ordinary controls to use in an iPad app, so having to replace them when adopting the Mac idiom has been an awkward restriction. If you've added a custom numeric stepper or changed how a view refreshes to accommodate it, this is a reason to take another look at that code.

There was some confusion in the documentation when this post was first published. The individual UIRefreshControl and UIStepper pages still said the controls weren't available in the Mac idiom, despite the UIKit updates page announcing support. The refresh control page even suggested replacing pull-to-refresh with a Refresh menu command.

That doesn't mean every replacement should go. A menu command may still be a useful way to refresh a Mac app, and you'll need to consider the older macOS versions you support before removing compatibility code. The announcement gives you another option to evaluate for your interface.

I like seeing Catalyst improve in this way. Sharing more of the ordinary UIKit controls between an iPad and Mac app means fewer special cases to maintain, leaving more time for the places where the Mac version would benefit from a different design.

Update, 12 September 2026: Apple's individual UIRefreshControl and UIStepper pages no longer include those Mac idiom warnings.