Начальная страница в течение 5 секунд после файла default.png и до MainWindow.nib - PullRequest
0 голосов
/ 02 марта 2010

Я создал проект, в котором default.png спит в течение 3 секунд, а затем загружается MainWindow.xib. Я хотел создать новый IntroPageViewController.xib до загрузки FirstPageViewController.xib. Я хотел поместить текст в IntroPage, который загружается на 10 секунд и имеет кнопку пропуска. Я уже создал FirstPageViewController.xib, теперь я хочу загрузить IntroPageViewController.xib в applicationdidfinishlaunching.

Я пытался внести изменения в FirstPageAppDelegate.h и .m, но все равно загружается FirstPageViewController.xib, и если я изменяю info.plist, чтобы загрузить IntroPageViewController.xib или IntroPageViewController, приложение вылетает. Нужна помощь, пожалуйста.

Заранее большое спасибо :)

С уважением, Coder

Ответы [ 2 ]

1 голос
/ 03 марта 2010

Вместо того, чтобы загружать IntroPageViewController.xib перед FirstPageViewController.xib вручную, попробуйте следующее:

  • Когда загружается FirstPage, покажите IntroPage вид сверху этого.
  • После задержки или когда кнопка пропуска нажмите, удалите IntroPage.

Вот как:

Создайте 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 в Интерфейсном Разработчике и перетаскивание UIButton в представление, установите его заголовок на «Пропустить».

Подключите кнопку к действию skipPressed и подключите владельца файла к кнопке.

Вернитесь к Xcode и Build and Run , чтобы протестировать его. Если все хорошо, ваш IntroView должен быть виден во время запуска в течение 5 секунд или до тех пор, пока вы не нажмете кнопку Пропустить.

0 голосов
/ 02 марта 2010

используйте nstimer для создания таймера. Соответствующее действие будет выполнено через 10 секунд или при нажатии кнопки пропуска.

...