Post

Replies

Boosts

Views

Activity

Reply to UIMenuBuilder - some menus refuse customization
I had no trouble replacing the View menu with code similar to the following: override func buildMenu(with builder: any UIMenuBuilder) {     super.buildMenu(with: builder)     if builder.system == .main {         let cmd = UIKeyCommand(title: "Hello", image:nil, action:#selector(doStuff), input: "1", modifierFlags: .command)         let menu = UIMenu(image: nil, options: .displayInline, children: [cmd])         if let view = builder.menu(for: .view) {             let newView = view.replacingChildren([menu])             builder.replace(menu: .view, with: newView)         }     } } With that code the View menu only shows the one menu item I created. Tested with Xcode 26 beta 7 running on a simulated iPad running iPadOS 26 beta 6.
Topic: UI Frameworks SubTopic: UIKit
Aug ’25
Reply to iOS26 UISearchbar and UISearchController cancellation issues
The documentation for showsCancelButton clearly states that this property is ignored on an iPad so that is expected behavior. So this means that tapping the little x icon causing the search to be cancelled is, unfortunately, also expected. A Mac Catalyst version of a UIKit app has always had this undesired behavior. It seems Apple is making the iPad version work the same. It’s a poor choice in my opinion. File a request via Feedback Assistant asking for it to be changed. There are many bugs in iOS 26 related to UISearchBar. I’ve filed at least 3 separate bug reports and Apple doesn’t seem to care since none have been fixed. 2 of my reports were filed against beta 1. And my reports are about clearly broken functionality, not just things I would prefer to behave differently. But you should file your own bug reports for any incorrect or undesired behavior. Apple needs to know that things don’t work and that they are affecting people’s apps. Here’s a post I made summarizing the issues I’m still facing: https://developer.apple.com/forums/thread/797701
Topic: UI Frameworks SubTopic: UIKit Tags:
Aug ’25
Reply to Toolbar tint color with Liquid Glass
There are several existing discussions on this bug. Many people have filed bug reports since beta 1. So far it seems as if Apple really wants black and white interfaces starting with iOS 26. The tintColor of UIBarButtonItem can work in some cases. Basically only for prominent buttons not made with a custom view. Feel free to file a bug report. Maybe one more will be enough for Apple to fix the problem.
Topic: UI Frameworks SubTopic: General
Aug ’25
Reply to Is there a tech note for menuBuilder?
I looked into migrating some of my existing validateCommand: code into canPerformAction:sender: and I hit a roadblock. In one of my cases I use the same selector for a whole set of menus. I use the command’s propertyList value to act accordingly. This is fine in validateCommand: since I have access to the command. But in canPerformAction:sender I only get the selector. The sender is a private type called _UIMenuBarItem. I can see in the debugger that there is a reference to the command and the propertyList but there’s no public API to get to either. BTW - that is the result while testing the Mac Catalyst version of the app.
Topic: UI Frameworks SubTopic: UIKit
Aug ’25
Reply to iOS 26 Beta 6 in Simulator
Presumably Xcode 26 beta 6 will be released next Tuesday and that should support iOS 26 beta 6. It’s unusual that Apple released iOS 26 beta 6 only a week after beta 5 and likely a week before Xcode 26 beta 6 comes out. In short, no there is no iOS 26 beta 6 simulator yet.
Aug ’25
Reply to UISearchController scope buttons disappear forever after dismissing search when embedded in a search tab
I filed two related UISearchBar scope button bug reports against beta 1. Still not fixed as of beta 5. Though earlier today I found a work around that might work in your case too. Set the search controller scopeBarActivation to .manual. Set the controller’s delegate. In the didPresentSearchController delegate method, call setShowScope(true, animated: true) on the search bar. In the willDismissSearchController delegate method, call setShowScope(false, animated: true) on the search bar. The latter one is key. The result looks slightly clunky but at least the scope buttons appear more than once.
Topic: UI Frameworks SubTopic: UIKit Tags:
Aug ’25
Reply to UIMenuBuilder - some menus refuse customization
I had no trouble replacing the View menu with code similar to the following: override func buildMenu(with builder: any UIMenuBuilder) {     super.buildMenu(with: builder)     if builder.system == .main {         let cmd = UIKeyCommand(title: "Hello", image:nil, action:#selector(doStuff), input: "1", modifierFlags: .command)         let menu = UIMenu(image: nil, options: .displayInline, children: [cmd])         if let view = builder.menu(for: .view) {             let newView = view.replacingChildren([menu])             builder.replace(menu: .view, with: newView)         }     } } With that code the View menu only shows the one menu item I created. Tested with Xcode 26 beta 7 running on a simulated iPad running iPadOS 26 beta 6.
Topic: UI Frameworks SubTopic: UIKit
Replies
Boosts
Views
Activity
Aug ’25
Reply to iOS26 UISearchbar and UISearchController cancellation issues
The documentation for showsCancelButton clearly states that this property is ignored on an iPad so that is expected behavior. So this means that tapping the little x icon causing the search to be cancelled is, unfortunately, also expected. A Mac Catalyst version of a UIKit app has always had this undesired behavior. It seems Apple is making the iPad version work the same. It’s a poor choice in my opinion. File a request via Feedback Assistant asking for it to be changed. There are many bugs in iOS 26 related to UISearchBar. I’ve filed at least 3 separate bug reports and Apple doesn’t seem to care since none have been fixed. 2 of my reports were filed against beta 1. And my reports are about clearly broken functionality, not just things I would prefer to behave differently. But you should file your own bug reports for any incorrect or undesired behavior. Apple needs to know that things don’t work and that they are affecting people’s apps. Here’s a post I made summarizing the issues I’m still facing: https://developer.apple.com/forums/thread/797701
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
Boosts
Views
Activity
Aug ’25
Reply to Toolbar tint color with Liquid Glass
There are several existing discussions on this bug. Many people have filed bug reports since beta 1. So far it seems as if Apple really wants black and white interfaces starting with iOS 26. The tintColor of UIBarButtonItem can work in some cases. Basically only for prominent buttons not made with a custom view. Feel free to file a bug report. Maybe one more will be enough for Apple to fix the problem.
Topic: UI Frameworks SubTopic: General
Replies
Boosts
Views
Activity
Aug ’25
Reply to Is there a tech note for menuBuilder?
I looked into migrating some of my existing validateCommand: code into canPerformAction:sender: and I hit a roadblock. In one of my cases I use the same selector for a whole set of menus. I use the command’s propertyList value to act accordingly. This is fine in validateCommand: since I have access to the command. But in canPerformAction:sender I only get the selector. The sender is a private type called _UIMenuBarItem. I can see in the debugger that there is a reference to the command and the propertyList but there’s no public API to get to either. BTW - that is the result while testing the Mac Catalyst version of the app.
Topic: UI Frameworks SubTopic: UIKit
Replies
Boosts
Views
Activity
Aug ’25
Reply to iOS 26 Beta 6 in Simulator
Presumably Xcode 26 beta 6 will be released next Tuesday and that should support iOS 26 beta 6. It’s unusual that Apple released iOS 26 beta 6 only a week after beta 5 and likely a week before Xcode 26 beta 6 comes out. In short, no there is no iOS 26 beta 6 simulator yet.
Replies
Boosts
Views
Activity
Aug ’25
Reply to UISearchController scope buttons disappear forever after dismissing search when embedded in a search tab
I filed two related UISearchBar scope button bug reports against beta 1. Still not fixed as of beta 5. Though earlier today I found a work around that might work in your case too. Set the search controller scopeBarActivation to .manual. Set the controller’s delegate. In the didPresentSearchController delegate method, call setShowScope(true, animated: true) on the search bar. In the willDismissSearchController delegate method, call setShowScope(false, animated: true) on the search bar. The latter one is key. The result looks slightly clunky but at least the scope buttons appear more than once.
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
Boosts
Views
Activity
Aug ’25