У меня проблема, когда цвет фона моего SKView (серый) ненадолго отображается перед представлением сцены.
Я попытался установить его вручную, как через редактор раскадровки, так и в моем контроллере (self.skView.backgroundColor = [SKColor blueColor]
), но он остается серым. Разве это не атрибут, который можно переопределить?
Обновление №1
Вот небольшое объяснение того, что происходит:
- Вызывается
viewDidLoad
, аskView
отображается на экране с серым фоном (skView.scene
еще не установлено). - Я загружаю все активы игры (что занимает ~ 1 секунду), и в этот момент виден серый фон.
- После загрузки ресурсов я загружаю сцену и представляю ее (серый экран заменяется содержимым сцены)
Вьюконтроллер
- (void)viewDidLoad
{
[self.activityIndicator startAnimating];
[self authenticatePlayer];
self.skView.backgroundColor = [SKColor blueColor];
// During this time the grey screen is visible as the assets are being loaded and take ~1 second
// self.skView.scene is NULL here so I cannot set the backgroundColor...
[GamePlayScene loadSceneAssetsWithCompletionHandler:^{
[self.activityIndicator stopAnimating];
self.activityIndicator.hidden = YES;
CGSize viewSize = self.skView.bounds.size;
self.gamePlayScene = [[GamePlayScene alloc] initWithSize:viewSize];
self.adView.autoresizingMask = UIViewAutoresizingFlexibleWidth;
[self.skView presentScene:self.gamePlayScene];
}];
...