prevent inputAccessoryView from displaying when presenting viewController

Viewed 1082

I have a viewController with an inputAccessoryView that is displayed as below:

override var inputAccessoryView: UIView? {
   get {
       return myInputView
   }
}

override var canBecomeFirstResponder: Bool {
   return true
}

I can easily show and hide this inputAccessoryView by using self.becomeFirstResponder() and self.resignFirstResponder()

The problem I have is when the viewController is first presented (instantiated from storyboard), the inputAccessoryView is visible. I can only dismiss it in viewDidAppear using self.resignFirstResponder(). This shows it moving down with an animation.

I am guessing that a viewController automatically becomes firstResponder when it is presented, but wondering how I can override that before viewWillAppear. There is no effect in putting the self.resignFirstResponder method in viewWillAppear.

0 Answers
Related