Cómo cambiar la position de un controller de vista modal de hoja de formulario

¿Cómo cambiaría uno la position de un controller de vista modal de hoja de formulario?

Por defecto se coloca en el centro de la pantalla, me gustaría compensar la position de la hoja de formulario para que cuando muestre el keyboard no se superponga a la window de la hoja de formulario.

es posible?

Si usa un UIViewController y lo presenta utilizando presentModalViewController, debe aceptar el comportamiento pnetworkingeterminado para el tipo que ha especificado (formulario). Eso va a aterrizar en el centro cada vez. Entonces, como lo haces, no es posible.

Sin embargo, sería relativamente trivial crear tu propia vista y presentártela animándola (y realizando un trabajo para oscurecer / deshabilitar la interacción en las vistas situadas a continuación), dándote el poder de ubicarla donde quieras.

En cuanto a acomodar el keyboard, supongo que consideraría desplazar la subvista que está presentando en la vista de formulario al offset apropiado.

Espero que esto sea útil.

Puede modificar el marco del controller principal. algo como:

CGRect frame = self.parentViewController.view.frame; frame.origin.x -= 50; frame.origin.y -= 50; self.parentViewController.view.frame = frame; 

esto moverá la position de su vista modal por (-50, -50)