2011-07-08 8 views
5

Nunca había visto esto suceder antes y no puedo entender qué lo está causando, tal vez usted puede ayudar. Tengo un UISplitViewController como mi controlador de vista raíz. El lado izquierdo es un UINavigationController con un controlador de vista de tabla. Puedo rotar de potrait a landscape y viceversa una y otra vez sin ningún problema. Sin embargo, si estoy en retrato y toco el botón Menú para mostrar el UIPopoverController que contiene el controlador de navegación del lado izquierdo y rotar a horizontal mientras el menú está visible, ¡la vista izquierda con el controlador de navegación se adelgaza! El lado izquierdo se adelgaza unos 30 píxeles y aparece un espacio entre el lado izquierdo y el controlador de vista detallada.UISplitViewController se contrae al costado izquierdo al girar con Menu popover visible

Estoy flabberghasted. ¿Algunas ideas?

EDITAR: El menú Popover no necesita estar visible durante la rotación. Solo se debe haber mostrado durante el retrato para que ocurra el problema del tamaño. No tengo ningún código que cambie el tamaño de nada en mis métodos de delegado UISplitViewController. Solo actualizo la barra de herramientas en el controlador de vista detallada para agregar/eliminar la opción del botón de la barra de menú. He registrado el tamaño del marco del controlador izquierdo antes/después/durante la rotación y antes/después/durante la proyección en el popover y siempre se muestra como 320 de ancho.

Kenny

+0

nunca he visto el problema. sim o dispositivo? ¿versión del sistema operativo? código relacionado? – bshirley

+0

Solo ocurre en el dispositivo (prueba 4.2 y 4.3). Quería publicar el código, pero simplemente no hay ningún código relacionado. No estoy alterando los tamaños o posiciones de nada. –

Respuesta

3

Encontré una solución. Mi controlador de vista detallada en el lado derecho tenía un UIImageView que contenía una imagen de fondo. La imagen de fondo era lo suficientemente grande para la orientación vertical, por lo que es más grande que el UIImageView cuando se ha cambiado de tamaño para la vista de paisaje. Su modo de contenido estaba configurado en Centro. Por alguna razón, esa es la causa de la reducción de tamaño de la vista del lado izquierdo (aunque el marco del lado izquierdo nunca cambió en ningún punto). Comprobando la casilla de verificación "Clip Subviews" en el xib para mi controlador de vista detallada parece haber resuelto el problema.

+0

bueno, ¡fue divertido! % -) – bshirley

+0

Estoy tan contento de que hayas publicado la solución, ¡he estado luchando por este mismo problema todo el día! ¡Gracias! –

+0

¡Un gran hallazgo! Por cierto, este problema puede ocurrir en iOS> 4.x también. –

Cuestiones relacionadas