¿UITabBar no está alineado en la parte superior?

Estoy usando UITabBarController en mi aplicación. Originalmente inicié la aplicación desde SDK 4.3 y luego pasé a SDK 5.0. Por alguna razón, necesito cambiar mi código para trabajar en el nuevo SDK. Entonces, cambié el código

De esto

self.view = tabController.view;

A esto

[self.view addSubview:tabController.view];

Ahora el tabController cambia de vista a subView y no se alinea correctamente.

¡Cualquier ayuda será apreciada!

preguntado el 08 de noviembre de 11 a las 19:11

1 Respuestas

El UITabBarController debe usarse directamente en UIWindow, la brecha que está viendo es porque se coloca automáticamente encima de la barra de estado.

Creo que la mejor solución es hacer esto en el delegado de su aplicación:

[window addSubview:[tabController view]];

O puede cambiar el marco de la vista del tabController:

tabController.view.frame = CGRectOffset(tabController.view.frame, 0, -20)
[self.view addSubview:tabController.view];

El 20 mágico es la altura de la barra de estado.

respondido 09 nov., 11:00

¡Gracias, funciona muy bien! Pequeño cambio en su código "tabController.view.frame = CGRectOffset (tabController.view.frame, 0, -20);" -20 debe estar en el eje y. - Código difícil

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.