Pregunta

He leído en la documentación de Apple sobre el comportamiento de cambio de tamaño de UINavigationController y no ha sido un gran problema hasta ahora.

Tengo el siguiente código para establecer mi punto de vista de UINavigationController:

navController.view.frame = CGRectMake(0, 40, 320, 420);

y esto es suficiente hasta que la vista está oscurecida por una vista modal, en cuyo punto el punto de vista cambia de tamaño para el tamaño predeterminado en algún lugar entre las llamadas de viewWillAppear y viewDidAppear (como se hereda UINavigationController de UIViewController).

Estoy intentando mantener una bandera visible por encima de la UINavigationController (en el espacio 40 por 320 dejó disponible) pero esta bandera está oscurecido consistentemente como se describe anteriormente.

¿Hay una manera de cambiar el tamaño de la conducta surpress UINavigationController sin la subclasificación UIViewController mismo?

¿Fue útil?

Solución

En constructor de interfaces, puede desmarcar la casilla de verificación de ajuste de tamaño automático.

En el código, que es

[myNavController.view setAutoresizesSubviews: NO];

Otros consejos

Me gustaría probar

myNavController.superview.autoresizesSubviews = NO

y, obviamente, comprobar myNavController.autoresizingMask

Como último recurso, subclase su supervista y reimplementar layoutSubviews

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top