Estoy tratando de entender cómo el view
asociado a un UITabBarController
, UINavigationController
o UIViewController
reacciona cuando se activa la barra de estado durante la llamada.
Mi problema es que parecen comportarse de manera diferente y esto me causa efectos secundarios ....¿Cómo influye la barra de estado de la llamada en el tamaño de la vista de UIViewController? (y cómo manejarlo correctamente)
He hecho un proyecto que cambia la vista raíz del controlador de la ventana para los 3 tipos anteriores y volcar el description
del view
para obtener las coordenadas del cuadro.
UIViewController
estado OFF Mi lugar :
UIView: 0x4e2a1f0; frame = (0 20; 320 460); autoresize = W+H; ....EN
UIView: 0x4e2a1f0; frame = (0 40; 320 440); autoresize = W+H; ...
Ésta entiendo: cuando aparezca la barra de estado propio lugar, el ancho de la vista de la UIViewController se encoge y pierde 20, y sus movimientos y coord de 20 a 40.
que es perfecto! Yo esperaría lo mismo al reemplazar un clásico UIViewController
con un UITabBarController
o un UINavigationController
¡pero ese no es el caso!
UINavigationController
barra de estado de llamadas entrantes OFF
UILayoutContainerView: 0x4b35ab0; frame = (0 0; 320 480); autoresize = W+H; ..EN
UILayoutContainerView: 0x4e1b060; frame = (0 0; 320 480); autoresize = W+H; ..
En ese caso, la vista manejada por el UINavigationController no tiene sus propiedades de marco cambiadas cuando se cambia la barra de estado de incall?! (¿Por qué? :()
UITabBarController
OFF
UIView: 0x4b2f6a0; frame = (0 20; 320 460); autoresize = W+H; ...EN
UIView: 0x4b2f6a0; frame = (0 20; 320 460); autoresize = W+H; ...
Igual que en el UINavigationController
: el view
del UITabBarController
no parece verse afectado cuando se activa la barra de estado de incall.
¿Alguien me puede explicar cómo funciona este cambio de tamaño al mostrar la barra de estado de llamadas entrantes?
Mi objetivo final es mostrar un UIView
que se muestra ARRIBA todo UITabBarController
y que cambia el tamaño correctamente cuando se muestra el estado de la llamada entrante. Sin embargo, realmente no sé dónde poner esa vista en la jerarquía de vistas: si lo agrego como un elemento secundario de la vista de UITabBarController, ya que este no reacciona a la visualización del estado de llamada entrante, el mío tampoco reacciona: (
+1 para preocuparse por esto. –