What's the height of a UITabBar on iOS 8, iOS 9, iOS 10, and iOS 11?
Asked Answered
E

4

60

The height of the UITabBar seems to have changed between iOS 7 and 8/9/10/11. I'm posting this question for others to easily find the answer.

So: What's the height of a UITabBar on iOS 8/9/10/11 on iPhone and iPad?

Elisa answered 28/8, 2014 at 14:5 Comment(0)
E
134

For iOS 8, 9, and 10 the height is 49 points, both on iPad and iPhone and both in portrait and landscape. It used to be 56 points on iOS 7.

For iOS 11, things get a bit more complicated:

In portrait and regular landscape, the height is still 49 points. In compact landscape, the height is now 32 points.

On iPhone X, the height is 83 points in portrait and 53 points in landscape.

Elisa answered 28/8, 2014 at 14:7 Comment(4)
Thanks Johannes :)Tonytonya
Actually, the height is still 49 points on iPhone X- the 34 points below it are the space below the safe area.Jerryjerrybuild
for the new iPhone Xs (iPhone XS, XS Max, XR) the height is 83 points in portrait and 70 points in landscape.Deutzia
(tabBar.frame.size.height - (UIApplication.shared.keyWindow?.safeAreaInsets.bottom ?? 34)) works on all devicesMotorway
S
21

iOS 9 and iOS 10 still uses 49 points for the Tab Bar (and 64 points for a navigation bar) Thanks for the self Q/A, was actually helpful to conform what I had on storyboard.

Seessel answered 6/9, 2015 at 13:40 Comment(2)
Good for consistence.Switchboard
as a note of further update, ios 10 has the same heights for tab bar and navigation bar (49 points for tab bar, 64 points for navigation bar).Ingrate
K
5

I would recommend just calculating it using TabBar.Height - UIApplication.SharedApplication.KeyWindow.SafeAreaInsets.Bottom. Check for system version >= 11 first.

Krever answered 8/10, 2019 at 9:48 Comment(1)
(tabBar.frame.size.height - (UIApplication.shared.keyWindow?.safeAreaInsets.bottom ?? 34))Motorway
R
3
iPhone portrait landscape
5s/SE/6/6s/7/8(iOS10) 49 49
5s/SE/6/6s/7/8(iOS11) 49 32
X/XS/XR 83(49+34) 53(32+21)
XS Max 83(49+34) 70(49+21)

you can get by this method: self.tabBarController?.tabBar.frame.size.height

Rasbora answered 29/4, 2022 at 4:18 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.