Intro Pagina per 5 secondi dopo il file Default.png e prima della MainWindow.nib
-
23-09-2019 - |
Domanda
I aveva creato un progetto in cui la default.png
dorme per 3 secondi e poi il MainWindow.xib
viene caricato ho voluto creare una nuova IntroPageViewController.xib
prima del caricamento del FirstPageViewController.xib
. Ho voluto mettere un po 'di testo nel IntroPage che carica per 10 secondi e dispone di un pulsante di salto.
Ho già creato il FirstPageViewController.xib
, ora voglio carico IntroPageViewController.xib
in applicationdidfinishlaunching
.
Ho cercato di apportare modifiche alla FirstPageAppDelegate.h
e .m ma ancora carichi FirstPageViewController.xib
e se apportare modifiche alle info.plist
a carico IntroPageViewController.xib
o IntroPageViewController
l'applicazione si blocca.
Help needed per favore.
Grazie una tonnellata in anticipo :)
Saluti, Coder
Soluzione
Invece di caricare l'IntroPageViewController.xib davanti al FirstPageViewController.xib manualmente, provate questo:
- Quando i carichi FirstPage, mostrano la IntroPage vista su di esso.
- Dopo un ritardo o quando il pulsante salto è premuto, rimuovere l'IntroPage.
Ecco come:
Fare un IntroPageViewController con corrispondente file XI ter.
In Xcode, impostare un pulsante e un metodo di azione per tale pulsante.
// 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
}
Ora il passo successivo è quello di aprire IntroViewController.xib in Interface Builder e trascinare un UIButton alla vista, impostare il titolo di 'Skip'.
Collegare il pulsante per il skipPressed l'azione e del file di connessione proprietario al pulsante.
Torna Xcode e costruire e gestire per testarlo. Se tutto va bene, il vostro IntroView dovrebbe essere visibile al momento del lancio per 5 secondi o fino a quando si tocca il tasto Skip.
Altri suggerimenti
uso NSTimer per creare un po 'di timer. verrà eseguita l'azione corrispondente dopo 10 sec, quando il pulsante viene premuto saltare.