Если вы используете UIViewController и представляете его с использованием presentModalViewController, то вы должны принять поведение по умолчанию для указанного вами типа (форма).Вот так каждый раз будет высаживаться квадрат в центре.Таким образом, то, как вы это делаете, невозможно.
Однако было бы относительно тривиально создать свой собственный вид и представить его самостоятельно, анимируя его и выводя из него (и выполняя некоторую работу длязатемнить / отключить взаимодействие для представлений, расположенных ниже), что дает вам возможность разместить его там, где вы хотите.
Что касается размещения клавиатуры, я полагаю, что я бы подумал о прокрутке подпредставления, которое вы представляете в формевид на соответствующее смещение.
Надеюсь, это полезно.