iMessage sksprite位置与打印到控制台的内容不一致?

时间:2017-05-09 19:07:22

标签: ios swift sprite-kit imessage-extension

我不知道如何解决这个问题并且已经持续了好几个小时。我无法根据iMessage扩展中的func didTransition(to presentationStyle:调整SKSpritenodes的位置。

我试图根据这个屏幕尺寸布置我的精灵,因为在打印之后,我确认无论如何都保持相同:

let screenSize = UIScreen.main.bounds

我一直在didTransition功能中调整位置&尽量保持场景大小与视图一致:

 if(presentationStyle == .compact)
        {
            scene.uiToCompact()
        }
        else {
            scene.uiToFull()
        }
        skView.frame = CGRect(x: 0, y: 0, width: view.bounds.width, height: view.bounds.height)
        scene.size = CGSize(width: view.bounds.width, height: view.bounds.height)

我尝试创建变量并在更新中不断将精灵的位置设置为该变量:

    ground.position = CGPoint(x: (scene?.size.width)!/2, y: groundHeight)

和uiToCompact()或修改的地方:

 groundHeight = screenSize.height * 0.4

我也试过让这个总是更新:

ground.position = CGPoint(x: (scene?.size.width)!/2, y: screenSize.height * 0.4)

问题是什么都没有用,即使控制台打印出地面始终处于相同的数字位置。

我得到这个:完整到紧凑,在紧凑的我在场景的顶部看起来像:

enter image description here

enter image description here

我做错了什么?这不可能吗?

0 个答案:

没有答案