KeyboardLayoutGuide, back from when it didn't exist. Simply constrain your views to the KeyboardLayoutGuide's top anchor the way you would do it natively. If you add your view in Interface Builder, don't forget to enable the "Remove at build time" checkbox for the bottom constraint. By default, KeyboardLayoutGuide will align your item with the bottom safe area. This is a behaviour that can be opt out by using keyboardLayoutGuideNoSafeArea instead of keyboardLayoutGuide.