AVISO: Cualquier pregunta que no cumpla ninguno de estos criterios podrá ser borrada sin previo aviso.

Antes de nada saludos a la comunidad, estoy empezando con esto de la programación de aplicaciones, y estoy intentando refinar la interface de mi aplicación. La tengo hecha en vistas simples con botones y ahora estoy probando con la Tabbar.

Vereís tengo una aplicación basada en un TabBar, este Tabbar tiene dos botones, en una de las vistas que gestiona, he puesto unos botones y los he enlazado con una vista simple, donde tengo varios Text Field y un label.

Y tengo varios problemas el 1º es que no se como hacer para que la TabBar esté siempre visible en todas las vistas, el 2º si pulso el 2º boton del Tabbar y vuelvo al 1º, esté se queda en la vista en el que lo deje y yo quiero que vuelva al principio.

Sin más un cordial saludo a todos.

preguntado 20 May '12, 19:40

Alvaros_g's gravatar image

Alvaros_g
36336


Hola,como estas mostrando los view controllers? Si lo haces de forma modal el view controller mostrado escondera la tab bar... Tienes que crear un navigation controller antes del primer view controller que quieras mostrar y hacer el segue tipo push para que la tab bar se siga viendo.

En cuanto a hacer que cada vez que pulses el tab vuelva a el root view controller: Si estas en ese mismo tab lo hace el tab bar controller por defecto. Si quieres que al cambiar de tab el view controller que se va a mostrar sea siempre el root,puedes hacer lo siguiente: Implementas el protocolo UITabBarController delegate en el AppDelegate(o creas una clase separada,a tu eleccion),asignas el delegate del tabBarController a ese objecto y anyades este codigo:

- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController
{
    // Comprobamos que se ha cambiado de tab y que el view controller que se va a mostrar es un navigation controller
    if (tabBarController.selectedViewController != viewController && [viewController isKindOfClass:[UINavigationController class]]) {
        UINavigationController *navigationController = (UINavigationController *)viewController;
        [navigationController popToRootViewControllerAnimated:NO];
    }

    return YES;
}

Espero que te sirva,saludos

enlace permanente

respondido 21 May '12, 00:02

e1985's gravatar image

e1985
1.7k71226

editó 21 May '12, 00:03

Pues nada, para dejar una TabBar fija he utilizado un Navigation Controller y desde ahi he podido hacer que la tabbar esté presente en todas las vistas.

Para el segundo problema todavia no tengo solución, por ejemplo, estamos en el botón 1 de la tabbar y navego por ella, si pulso el 2 boton se me va a la segunda vista, pero si vuelvo a la primera vista no se va al principio sino que se queda donde lo deje.

Saludos. Perdonadme por si mis preguntas son muy tontas, pero soy principiante.

enlace permanente

respondido 20 May '12, 23:47

Alvaros_g's gravatar image

Alvaros_g
36336

No sé si será la solución a tu problema, pero mírate los storyboards y los segues.

Aquí te dejo un buen tutorial sobre el tema:

enlace permanente

respondido 21 May '12, 11:53

mserra's gravatar image

mserra
801266241

editó 21 May '12, 11:53

Tu respuesta:
Activar/desactivar vista previa

Sobre esta pregunta

Etiquetas de la pregunta:

×29
×1

Pregunta realizada el: 20 May '12, 19:40

Pregunta visitada: 465 veces

Última modificación: 21 May '12, 11:53

Seguir esta pregunta

Por Email:

Una vez que entres podrás suscribirte desde aquí para recibir actualizaciones

Por RSS:

Respuestas

Respuestas y Comentarios

Realizar Donación