hidesBottomBarWhenPushed in iOS 26

It appears that hidesBottomBarWhenPushed no longer works in iOS 26 Beta 1. Is it supposed to work, is it going away or is there a alternate behavior we should be using?

Answered by Frameworks Engineer in 844851022

It is not going away. Please file a feedback!

Accepted Answer

It is not going away. Please file a feedback!

hidesBottomBarWhenPushed is working fine for me with iOS 26 for showing/hiding the toolbar. You need to provide details on your setup.

screen recording

Your screenshots are showing a tab bar. hidesBottomBarWhenPushed is for hiding a toolbar.

From the documentation for hidesBottomBarWhenPushed:

A view controller added as a child of a navigation controller can display an optional toolbar at the bottom of the screen. The value of this property on the topmost view controller determines whether the toolbar is visible. If the value of this property is true, the toolbar is hidden. If the value of this property is false, the bar is visible.

Seeing this too - I filed FB18022139

We’ve been using hidesBottomBarWhenPushed for a long time specifically to hide the tab bar, and many developers and companies rely on this behavior to hide the tab bar when pushing view controllers.

This has become one of the top issues in communities like StackOverflow, as the behavior appears to be broken in iOS 26.

If hidesBottomBarWhenPushed no longer hides the tab bar in iOS 26, it would mean we have to redesign and fix the layout of every affected screen currently in production.

Therefore, we either need hidesBottomBarWhenPushed to continue working as it did, or Apple needs to provide a new recommended approach for hiding the tab bar when pushing a view controller.

Use

self.tabBarController?.tabBar.isHidden = true

in viewWillAppear to fix this issue.

As mentioned above, hidesBottomBarWhenPushed not functioning with the iOS 26 tab bar is a known issue and will be addressed in a future beta.

That being said, to hide the tab bar through UITabBarController for other reasons, use tabBarController.isTabBarHidden instead of isHidden on the UITabBar instance. The UITabBarController API will hide the various supported tab bars, like the iPad and visionOS tab bar. There is also an option to hide with animations with setTabBarHidden(_:animated:).

hidesBottomBarWhenPushed in iOS 26
 
 
Q