为什么Xcode中Storyboard的背景颜色不变? 它总是一样的灰色?

所以我改变了我的故事板文件中的默认视图的背景属性,以彩虹的颜色。 在Xcode中,我的button很好地显示了颜色,但是当我实际运行应用程序时,背景始终是以新的Xcode项目(“Hello World!”)开始的相同,丑陋,默认的灰色。

我已经搜遍了谷歌全部的答案,并无济于事。 我做错了什么或只是一个小故障? 提及比我使用Spritekit也是重要的,并且这个“视图”是我的故事板文件中唯一的视图,它是默认的视图文件。 我应该将self.view更改为skView吗? 这会工作吗?

哦,还有,当我手动尝试改变我的.m类viewDidLoad下的背景颜色做:

self.view.backgroundColor = [UIColor backgroundColor]; 

背景STILL不会更改,始终是相同的默认颜色。 请帮助我…我现在绝望…有任何地方找不到答案。 谢谢。

所有故事板,所有graphics化的答案:

故事板

说明:您应修改Main.storyboard ,select视图控制器 ,在属性检查器中更改View ,然后应用新的背景颜色。

0行代码,你应该得到这个结果:

在这里输入图像说明

在这里下载项目。

试着检查一下,你的.m文件里面没有一行说'self.view.backgroundColor = …'。 即在'loadView:','viewDidLoad:'或'viewWillAppear:'的某处

(我首先以为你已经链接到你的故事板里面的一些不同的viewController,但是如果你所有的button显示正确,那么这个假设是错误的)

如果你只是想快速解决这个问题,那么只需在你的.m文件中添加一行,说self.view.backgroundColor = [UIColor yellowColor];

UIViewbackgroundColor属性由SKViewinheritance,但只有在SpriteKit视图不呈现任何SpriteKit场景时才可见。

当然,实际上一个SpriteKit视图几乎总是有一个SKScene赋值给它。 当视图正在渲染一个场景时,它会用指定要呈现的任何场景的backgroundColor来绘制自己。

(这意味着如果您呈现不同的场景,背景将会改变,这也意味着如果您的场景的scaleMode和大小使场景不能填充整个视图,则视图的backgroundColor将在未覆盖的区域中可见现场。)


您可以使用其backgroundColor属性在代码中设置SKScene的背景色。 如果在.sks文件中以graphics方式创build场景,则可以在Xcode的检查器窗格中进行设置:

现场编辑检查员与颜色控制

重要提示:这是SpriteKit场景检查器 ,在编辑Xcode中的.sks文件时看到 – 不是在编辑故事板时看到的视图/视图控制器检查器。

如果你有和我一样的问题! 在SplashScreen之后,您看到了丑陋的灰色背景,我find了一个解决scheme! 创buildskView后,创build一个白色背景的空白场景,直接呈现!

 let backgroundColoredScene = SKScene() backgroundColoredScene.backgroundColor = SKColor.white() skView.presentScene(backgroundColoredScene) 

我有同样的问题。 尝试像上面那样改变main.storyboard的背景颜色,然后重新启动Xcode。