【问题标题】:Unable to get view controller size. Swift无法获取视图控制器大小。迅速
【发布时间】:2014-10-28 03:17:01
【问题描述】:

我是 Swift 新手,我正在尝试使用以下方法在我的 GameScene.swift 中创建一个 SKSpriteNode:

    var longChainsaw = ChainsawMaker.longChainsawCreator()

问题是我需要从 ChainsawMaker 类中获取 GameScene 视图的大小。这就是我在 ChainsawMaker.swift 中所拥有的:

import SpriteKit

class ChainsawMaker: SKScene {

class func longChainsawCreator () -> SKSpriteNode {

    //LONG CHAINSAW
    let longChainsawWidth = size.width/3

size.width/3 出现错误,即“ChainsawMaker.Type 没有名为 size 的成员”

有什么建议吗?

【问题讨论】:

    标签: ios swift ios8 sprite-kit


    【解决方案1】:

    那是因为您在调用类 func longChainsawCreator() 时没有启动 ChainsawMaker 的实例。

    根据文档 (https://developer.apple.com/library/IOs/documentation/SpriteKit/Reference/SKScene_Ref/index.html#//apple_ref/occ/instp/SKScene/size),size 作为实例变量存在,而不是类变量

    【讨论】:

    • 我明白了。我将其更改为以下class ChainsawMaker: SKSpriteNode { func longChainsawCreator2 () -> SKSpriteNode { 但我收到以下错误:“PhysicsBody:无法创建物理体。”奇怪的是,实际上我确实看到了我的物理体应该在的位置,并且我的精灵正在与它正确交互。知道如何摆脱这个错误吗?
    • 这是一个不同的问题,我认为您为此打开了另一个 SO 问题 - stackoverflow.com/questions/26608790/…。我会在那里回复。随意关闭这个问题
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-08-29
    • 2020-02-20
    • 2018-05-01
    • 1970-01-01
    • 2017-01-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多