Necesito mostrar una vista antes de mostrar una aplicación basada en pestañas y, una vez que el usuario toca un botón, la vista desaparece. Alguna idea?Mostrar vista antes de mostrarle UITabBar
Respuesta
aquí hay algunos códigos que muestran el proceso. Puede pegar este código en el delegado de la aplicación para ejecutar. Tenga en cuenta que este es el código de spaghetti, pero lo hice de esta manera para que pueda ver todos los pasos en un solo lugar. Normalmente, colocará partes de este código en su propio controlador de vista y clases.
esto está en el appdelegate .. tenga en cuenta que esto no está completamente probado para fugas y esas cosas ... es para un ejemplo.
@synthesize tabViewController;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UIWindow *w = [[UIWindow alloc]initWithFrame:[[UIScreen mainScreen] bounds]];;
self.window = w; //property defined in the .h file
[w release];
//create the tab bar controller
UITabBarController *tbc = [[UITabBarController alloc]init];
self.tabViewController = tbc;
[w addSubview:tbc.view];
//create the two tabs
NSMutableArray *a = [[NSMutableArray alloc]init];
//create the first viewcontroller
UIViewController *vca = [[UIViewController alloc]init];
vca.view.backgroundColor = [UIColor redColor];
vca.title = @"View A";
[a addObject:vca];
[vca release];
//and the second
UIViewController *vcb = [[UIViewController alloc]init];
vcb.view.backgroundColor = [UIColor blueColor];
vcb.title = @"View B";
[a addObject:vcb];
[vcb release];
//assign the viewcontrollers to the tabcontroller
tbc.viewControllers=a;
//release the array now that its retained by the tabcontroller
[a release];
[tbc release]; //tabbarcontroller is retained by our property
UIViewController *vcc = [[UIViewController alloc]init]; //this is the popup view
vcc.view.backgroundColor = [UIColor whiteColor];
UIButton *b = [UIButton buttonWithType:UIButtonTypeRoundedRect];
b.titleLabel.text = @"Click here";
[b addTarget:self action:@selector(buttonDismiss:) forControlEvents:UIControlEventTouchUpInside]; //hook into the buttons event
b.frame = CGRectMake(10, 10, 300, 40);
[vcc.view addSubview:b]; //add it to the popup view
[tbc presentModalViewController:vcc animated:YES];
[self.window makeKeyAndVisible];
return YES;
}
-(void) buttonDismiss:(UIButton *)sender
{
[self.tabViewController dismissModalViewControllerAnimated:YES];
}
Use un UIViewController. Presente ese controlador como una vista modal con el controlador de la barra de pestañas. Descartar el controlador de vista después de eso para ocultarlo
bien ... ¿dónde hago eso? ¿Dónde hago una instancia de esto? ¿Dónde lo digo para mostrar? y ¿dónde le cuento la pestaña regular con las otras vistas para mostrar cuando descarto la vista inicial? – irco
@irco Un controlador de vista modal muestra * encima de * sus otras vistas. Es capaz de desestimarse por sí mismo, por lo que no debería preocuparse por la última mitad de sus preguntas. En cuanto a cuándo crear una instancia y mostrarla, puede hacer eso en el método 'viewDidAppear' de su controlador de vista. Solo 'alloc' y' init' un nuevo VC y dile al VC actual que presente este nuevo como controlador de vista modal. –
- 1. UItabBar cambiar controladores de vista
- 2. Ocultar UITabBar?
- 3. Insertar un espacio/vista/imagen entre los artículos de UITabbar
- 4. Reemplace UITabBar con UIToolBar
- 5. calculando la altura de UITabBar
- 6. Vista eliminada antes de cargar
- 7. Ocultar UITabBar al presionar un UIView
- 8. iPhone - tamaño de uitabbar
- 9. Presionando programáticamente un botón UITabBar en Xcode
- 10. UITableView parcialmente oculto por UITabBar
- 11. UITabBar (Controlador) - ¿Obtener índice de tapped?
- 12. acolchado UITabBar selectionIndicatorImage
- 13. ¿Cómo personalizar Android ActionBar para mostrar una vista personalizada antes de las pestañas?
- 14. midiendo una vista antes de representarla
- 15. ActiveAdmin mostrar vista predeterminada contenido
- 16. Rieles + javascript - vista previa de la imagen antes de cargar
- 17. Mostrar vista en una vista de desplazamiento en la pantalla
- 18. Vista previa de la imagen antes de cargarla en IE9
- 19. Generando iconos para iPhone UITabBar
- 20. mostrar widgets en la vista de mapa
- 21. Ajuste de la altura de UITabBar
- 22. Ocultar una UITabBar cuando la orientación cambie
- 23. UITabBarItems en UITabBar Mostrar después de hacer clic en el elemento no cuando la aplicación se inicia
- 24. Cómo mostrar la vista previa de fuente de Google
- 25. Mostrar texto dinámico en una vista de Android
- 26. Mostrar hora local a la vista
- 27. ¿Cómo mostrar varios videos en vista única?
- 28. ¿Cómo mostrar la vista sin plantilla?
- 29. Cómo mostrar/ocultar una vista en EmberJS
- 30. Cómo mostrar la vista con animaciones
¿necesito instanciar las vistas dentro de la pestaña allí (verA y verB en su código)? Ya tengo la aplicación creada como una barra de pestañas y todas las vistas en ella. Solo quiero mostrar una vista antes de que el usuario vea la aplicación real. – irco
En realidad, veo lo que quieres decir ahora. ¡muchas gracias! – irco