Should iPadOS 18's UITabBarController work with more than 7 tabs?

Is it expected that UITabBarController in iPadOS 18 beta 2 should be working with more than 7 tabs yet, or is this still a work-in-progress on Apple's end?

Currently, if I create a UITabBarController and configure it with more than 7 root tabs (i.e. enough to trigger the "more" tab in previous iPadOS versions) using the new UITab API, any tab after the seventh one is effectively not selectable:

  • If the view is at a horizontally regular width: When you select via the new floating tab bar or the sidebar, the tab / sidebar item itself does become selected, but the actually displayed view controller remains unchanged.

  • If you switch the window to a horizontally compact width, it switches to the old-style of tab bar, and the "More" tab with its moreNavigationController functionality becomes visible, and from there you select and actually present one of the 'excess' tabs. (Note: there appear to be some push/pop animation glitches when transitioning between the moreNavigationController and the tab's view controller)

Then if you're in one of those 'more' tabs and then switch the window back to horizontally regular width:

  • The currently displayed view controller (e.g. "view controller 9") is still shown, and the "More" back button along with it

  • The new tab bar controls will act like some other tab is selected: specifically, whichever tab was selected when the window was last in the horizontally regular width mode

  • If you tap on the "More" back button, you get the moreNavigationController and from that you can select any of the other overflow tabs (all the while with the old old tab showing as selected in the tab bar)

  • If the moreNavigationController's tab list is visible, and you select one of the overflow tabs from the new tab bar or side bar, the correct view controller will be pushed onto the moreNavigationController's stack and show as selected in the new tab bar / side bar. (Hooray!) But this only appears to work specifically when the moreNavigationController's tab list is visible and there's nothing else on that navigation stack.

Fundamentally, it feels like the work to sync the new tab management state with the moreNavigationController state isn't finished yet? But I've looked at the beta release notes and not seen any mention of these limitations.

My questions, before I file any feedbacks:

  • Are these known issues that are still being worked on?

  • Is it Apple's intent that >7 root tabs should work by the time of iPadOS 18's release?

Answered by Frameworks Engineer in 793577022

This is a bug that we expect to resolve in a future beta release. Thanks for bringing this to our attention!

Accepted Answer

This is a bug that we expect to resolve in a future beta release. Thanks for bringing this to our attention!

As of Xcode 16 beta 4, most of these issues have been resolved.

There are still some visual bugs with the new floating tab bar and animations involving the moreNavigationController when at compact widths, but the overall behaviours of the new tab bar system now seem correct.

Should iPadOS 18's UITabBarController work with more than 7 tabs?
 
 
Q