Introducción Página durante 5 segundos después de que el archivo Default.png y antes de la MainWindow.nib

StackOverflow https://stackoverflow.com/questions/2361157

Pregunta

Me había creado un proyecto en el que el default.png duerme durante 3 segundos y luego el MainWindow.xib se carga quería crear un nuevo IntroPageViewController.xib antes de la carga FirstPageViewController.xib. Yo quería poner algún texto en el IntroPage que carga durante 10 segundos y tiene un botón de salto. Ya he creado el FirstPageViewController.xib, ahora quiero IntroPageViewController.xib carga en applicationdidfinishlaunching.

Traté de hacer cambios en el FirstPageAppDelegate.h y .m pero aún así las cargas FirstPageViewController.xib y si hago cambios en info.plist a IntroPageViewController.xib carga o IntroPageViewController la aplicación se bloquea. Se necesita ayuda por favor.

Gracias una tonelada de antemano :)

Saludos, Codificador

¿Fue útil?

Solución

En lugar de cargar el IntroPageViewController.xib por delante de la FirstPageViewController.xib manualmente, intente lo siguiente:

  • Cuando se carga el FirstPage, muestran la IntroPage ver en la parte superior de la misma.
  • Después de un retraso o cuando es botón de salto presionado, retire el IntroPage.

Así es como:

Hacer una IntroPageViewController con el correspondiente archivo de xib.
En Xcode, la configuración de un botón y un método de acción para ese botón.

// in your .h file.   

@interface IntroViewController : UIViewController {
    UIButton *skipButton;
}  

@property (nonatomic, retain) IBOutlet UIButton *skipButton;

-(IBAction)skipPressed;

@end  

// in the .m file  

-(IBAction)skipPressed {
    [self.view removeFromSuperview]; // this removes intro screen from the screen, leaving you FirstView
}

// put this in the viewDidLoad method
- (void)viewDidLoad {
    [super viewDidLoad];

    [self performSelector:@selector(skipPressed) withObject:nil afterDelay:5];
}

// add these in FirstViewController.m  

#import "IntroViewController.h"  

- (void)viewDidLoad {
    [super viewDidLoad];

    IntroViewController *introViewController = [[IntroViewController alloc] initWithNibName:@"IntroViewController" bundle:[NSBundle mainBundle]];
    [self.view addSubview:introViewController.view];
    [introViewController release]; // this removes your IntroScreen from memory once it disappears offscreen
}

Ahora el siguiente paso es abrir IntroViewController.xib en Interface Builder y arrastre un UIButton a la vista, establecer su título a 'Skip'.

Conectar el botón a la skipPressed acción y del propietario del archivo de conexión al botón.

Atrás Ir a Xcode y Generar y ejecutar para probarlo. Si todo va bien, su IntroView debe ser visible en tiempo de puesta en marcha durante 5 segundos o hasta que se toca el botón de salto.

Otros consejos

El uso NSTimer para crear algunas temporizador. La acción correspondiente se ejecutará después de 10 seg o cuando omitir botón será presionado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top