NEW: Master Swift design patterns with my latest book! >>

How to hide your navigation bar when the keyboard shows: hidesBarsWhenKeyboardAppears

Written by Paul Hudson    @twostraws

Showing the keyboard on an iPhone dramatically reduces how much space you have available, which is particularly annoying if the user is trying to type into a multi-line text view.

One simple way you can free up space is by setting to true the hidesBarsWhenKeyboardAppears property of your navigation controller – that will cause the navigation bar and any toolbars to hide themselves when the keyboard is shown.

Use this code to enable it:

navigationController?.hidesBarsWhenKeyboardAppears = true

Available from iOS 8.0

Did this solution work for you? Please pass it on!

Other people are reading…

About the Swift Knowledge Base

This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.

Get my latest video for free

Learn about value types, functional programming, and protocol-oriented programming in this new video – it's free!

Click here to visit the Hacking with Swift store >>