Как добавить собственный всплеск, который исчезает по истечении определенного времени, чтобы разрешить загрузку веб-просмотра. Objective-C

Я использую этот код для отображения заставки, но вижу только черное.

UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad" bundle:nil];
SplashViewController *splash = [storyBoard instantiateViewControllerWithIdentifier:@"splash"];
splash.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
splash.modalPresentationStyle = UIModalPresentationFullScreen;
[self.window addSubview:splash.view];

Контроллер вида на заставке загружается, потому что называются точки останова, но я не вижу контроллер вида, я просто вижу черный.

2 ответа

Думаю вместо добавления splash.view как window Подвид вы можете использовать presentViewController:animated:completion: представить контроллер заставки.

Я вижу, что вы используете раскадровку, вот что вы можете сделать:

- Add view controller (VC0) to storyboard
- Set correct orientation on VC0 - your app orientation
- Add container view on VC0 (full size view)
- Add splash screen image on VC0 (full size view)
- Create UIViewController subclass - call it for example CustomSplashDisplay
- create UIImageView IBOutlet - for example vwImage
- override viewDidLoad like:

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    [self performSelector:@selector(HideImage) withObject:nil afterDelay:kSplashScreenDuration];
}

-(void)HideImage
{
    [vwImage setHidden:YES];
    [self.view sendSubviewToBack:vwImage];
}

в раскадровке

- Set VC0 as initial view controller
- Set its class to CustomSplashDisplay
- connect UIImage outlet
- embed previous initial view controller in container view

беги сюда иди...

Другие вопросы по тегам