ios - SKView/SKScene 不会改变背景颜色

标签 ios objective-c xcode uiview sprite-kit

我似乎在我正在开发的游戏中遇到了一个特别奇怪的问题。该游戏包含三种游戏类型,每种类型都使用SKView作为游戏的显示。前两种游戏类型(称为普通游戏和国际象棋)可以正确更改代码中的背景颜色,如下所示:

    // Create and configure the scene.
    M2ChessScene *scene = [M2ChessScene sceneWithSize:yourGameView.bounds.size];
    scene.scaleMode = SKSceneScaleModeFill;
    [scene setBackgroundColor:[UIColor clearColor]];
    // Present the scene.
    [yourGameView presentScene:scene];
    [self updateScore:0];


    _scene = scene;
    _scene.delegate = self;
    _scene.isPrimaryView = YES;

这将创建场景并将背景设置为clearColor,并且它可以工作。然而,在我的第三种游戏类型(有两个场景 View )中,相同的代码(重复两次,每个场景一次)不起作用,我最终得到了黑色背景而不是清晰的背景。我究竟做错了什么?我看不出相同的代码如何不能在一个实例中工作,而在另一个几乎相同的类中不能工作(事实上,此类的代码是从国际象棋类中复制的,并在第二个 View 中重复(使用变量名编辑)) .

任何帮助将不胜感激。

最佳答案

在 iOS 上,您一次只能拥有一个个事件 SKView。虽然技术上没有错误,但两个 View 之一不会或很少渲染其内容并更新其节点和物理。

如果您需要分屏显示,则必须使用单个 SKView 和 SKScene 来实现它。

关于ios - SKView/SKScene 不会改变背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24498321/

相关文章:

objective-c - SCNScene - 不渲染在 TouchBegan 处理程序上对 SKNode 进行的更改

iphone - iOS:检测短信/电子邮件收件人

ios - NSNotification 不在另一个类中工作

android - Nodejs 是否可以通过 Web 应用程序读取已连接设备的系统日志?

objective-c - iPad 和 iPhone 使用不同图像时如何最小化代码?

iphone - 如何在 iPhone 上从网络下载文本文件?

ios - MonoTouch 中包含 500 个项目的 UITableView

ios - 为什么 TextView.text 为空

ios - 了解 Swift 中的实例化 - 为什么不在自定义类中要求

ios - 获取 CCCryptorStatus "-4310"