Вводная страница на 5 секунд после файла default.png и перед MainWindow.nib
-
23-09-2019 - |
Вопрос
Я создал проект, в котором default.png
засыпает на 3 секунды, а затем MainWindow.xib
загружается, я хотел создать новый IntroPageViewController.xib
до того, как FirstPageViewController.xib
нагрузки .Я хотел поместить немного текста во вводную страницу , которая загружается в течение 10 секунд и имеет кнопку пропустить .Я уже создал FirstPageViewController.xib
, теперь я хочу загрузить IntroPageViewController.xib
в applicationdidfinishlaunching
.
Я попытался внести изменения в FirstPageAppDelegate.h
и.м. но все же FirstPageViewController.xib
загружается, и если я внесу изменения в info.plist
для загрузки IntroPageViewController.xib
или IntroPageViewController
приложение выходит из строя .Нужна помощь , пожалуйста .
Заранее огромное спасибо :)
С уважением, Программист
Решение
Вместо того чтобы загружать IntroPageViewController.xib перед FirstPageViewController.xib вручную, попробуйте следующее:
- Когда загрузится первая страница, поверх нее отобразите вид внутренней страницы .
- После задержки или при нажатии кнопки пропустить удалите вводную страницу.
Вот как это делается:
Создайте IntroPageViewController с соответствующим xib-файлом.
В Xcode настройте кнопку и метод действия для этой кнопки.
// 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
}
Теперь следующий шаг - открыть IntroViewController.xib в Interface Builder и перетащить UIButton в представление, установив для его заголовка значение "Пропустить".
Подключите кнопку к Пропущенный выполните действие и подключите владельца файла к кнопке.
Вернитесь к Xcode и Сборка и запуск чтобы проверить это.Если все в порядке, ваш внутренний просмотр должен быть виден во время запуска в течение 5 секунд или до тех пор, пока вы не нажмете кнопку Пропустить.
Другие советы
используйте nstimer для создания некоторого таймера.Соответствующее действие будет выполнено через 10 секунд или при нажатии кнопки пропустить.