What is the top bar height of iPhone X?

后端 未结 8 1554
醉梦人生
醉梦人生 2020-12-02 08:40

I would like to know exact height of top bar of iPhone X. Could you please mention the status bar and navigation bar height of iPhone X. Please help me.

相关标签:
8条回答
  • 2020-12-02 09:05

    You can programmatically obtain the navigation bar's height by using safeAreaInsets on the view in the contained view controller:

    let navBarHeight = view.safeAreaInsets.top
    

    This will account for whether it's a large title navigation bar or not, and whether or not there's a search bar attached to it.

    See the safeAreaInsets documentation for more information.

    0 讨论(0)
  • 2020-12-02 09:06

    Nav bar is 44pt as usual (when no large titles) and the status bar has increased from 20pt to 44pt. Here's what you can type in the debugger to verify it:

    0 讨论(0)
  • 2020-12-02 09:08

    If you're using a uiwindow and you need to know the top bar height you can use this:

    guard let keyWindow = UIApplication.shared.keyWindow else { return }
    
    let navBarHeight = keyWindow.safeAreaInsets.top
    
    print("navBarHeight:" , navBarHeight)
    

    I got the idea from @Paolo's answer

    0 讨论(0)
  • 2020-12-02 09:15

    You can simply get it in the next way (Swift 3):

    let barHeight = navigationController?.navigationBar.frame.maxY
    

    To get correct value make sure that you call it after setting prefersLargeTitles

    navigationController?.navigationBar.prefersLargeTitles = false
    
    0 讨论(0)
  • 2020-12-02 09:21

    There is no specification in Apple Docs

    Apple Docs

    According to Geoff Hackworth its 88

    Navigation title types :

    • Standard title
    • Large title

    Increasing navigation bar in iOS 11

    navigationController?.navigationBar.prefersLargeTitles = true
    
    0 讨论(0)
  • 2020-12-02 09:25

    The display on iPhone X, however, is 145pt taller than a 4.7" display, resulting in roughly 20% additional vertical space for content.

    for more information you get HIG for iphone X from apple documents and detail description in here1 and here2

    status bar height

    previously 20pt, now 44pt

    Because of the sensors on top of the display, the new status bar is split in 2 parts. If your UI is doing something special with that space (previously 20pt high, now 44pt), because it will be taller on the iPhone X. Make sure that it can be dynamically changed in height. A great thing is that the height won’t be changed if a user makes a phone call or is using a navigation app, which was previously the case on other iPhones.

    portrait

    Navigation bar height as normal 88 and large title time 140

    • Standard title - 44pt (88pt with Status Bar)
    • Large title - 140pt
    • bottom bar - 34pt

    Landscape

    • Standard title - 32pt
    • bottom bar - 21pt
    0 讨论(0)
提交回复
热议问题