For this to work, all views added to the UIInputViewController must use layout restrictions, so you cannot add any subheadings that use UIViewAutoresizing masks. If you want to use UIViewAutoresizing, just add a subview as shown below and then add all the other views to that view.
UIView *mainView = [[UIView alloc] initWithFrame:self.view.bounds];
[mainView setTranslatesAutoresizingMaskIntoConstraints:NO];
[self.view addSubview:mainView];
NSLayoutConstraint *widthConstraint = [NSLayoutConstraint constraintWithItem:mainView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeWidth multiplier:1.0 constant:0.0];
NSLayoutConstraint *heightConstraint = [NSLayoutConstraint constraintWithItem:mainView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeHeight multiplier:1.0 constant:0.0];
[self.view addConstraints:@[widthConstraint, heightConstraint]];