Ios 与SpriteKit一起使用UIScrollView时的随机搜索

Ios 与SpriteKit一起使用UIScrollView时的随机搜索,ios,iphone,objective-c,uiscrollview,sprite-kit,Ios,Iphone,Objective C,Uiscrollview,Sprite Kit,我在滚动时遇到了问题/延迟 它只出现在iPhone5上,很少出现在iPhone5s上。 它仅在按住手指时显示,而不是在滚动视图减速时显示。 它看起来非常随机,但一旦开始滞后,它总是持续一段时间 跳出主屏幕并返回几次可能会触发该错误(有时会工作一段时间,有时会一直显示该错误)。正如我所说,这是随机发生的,所以如果你尝试这个示例项目,但没有看到任何研究,请耐心尝试更多 示例项目基于SpriteKit游戏模板,我尝试对其进行尽可能少的更改以使其更易于调试 示例项目: 关于这一点,我正在与苹果的技术支持

我在滚动时遇到了问题/延迟

它只出现在iPhone5上,很少出现在iPhone5s上。 它仅在按住手指时显示,而不是在滚动视图减速时显示。 它看起来非常随机,但一旦开始滞后,它总是持续一段时间

跳出主屏幕并返回几次可能会触发该错误(有时会工作一段时间,有时会一直显示该错误)。正如我所说,这是随机发生的,所以如果你尝试这个示例项目,但没有看到任何研究,请耐心尝试更多

示例项目基于SpriteKit游戏模板,我尝试对其进行尽可能少的更改以使其更易于调试

示例项目:

关于这一点,我正在与苹果的技术支持部门联系,但到目前为止,他们只提到他们将把它发送给SpriteKit的技术人员,然后再回复我


我已经为这个问题挣扎了大概一年了,所以如果有人能想出一个真正的解决办法来解释为什么会发生这种情况,我会高兴地哭。

这只是一个想法:你有没有尝试过将
scrollViewDidScroll
方法与动画分离?(如JavaScript中的“去抖动”滚动事件。)

我现在不能测试它,也不是说这是一个好的实践,但我很好奇这是否能解决问题


抽象示例:

某个全局变量:

CGPoint globalVar;

在ViewController中:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {

    globalVar = scrollView.contentOffset;
}

在场景中:

-(void)update:(CFTimeInterval)currentTime {

     spriteToScroll.position = globalVar;
}

您是否使用滚动视图来实现移动摄像机系统?或者这是UIKit主菜单的一部分还是其他什么?这更像是一个滚动菜单。如果SpriteKit中有UIScrollView的替代品,我很乐意使用,但没有。唯一的一个是没有办法接近UIScrollView的本地感觉。你在仪器中做过任何分析吗?没有,但是谢谢你的建议,我会马上做。我真的不知道该找什么,但我会试试看。@Sven不走运。我找不到任何特别的东西,但我对分析器不是很熟悉。唯一引起我注意的是,当studdering出现时,滚动条的更新/呈现也开始闪烁。所以感觉UIKit部分由于某种原因开始落后了。我确实从一位开发人员那里得到了这个建议,但它对我不起作用。我现在又试了一次,但还是不走运。下面是我添加的代码的一个分支:好的,谢谢,我将在一台设备上测试它。我真的很想在应用程序中使用滚动视图。但无论是CCScrollview还是任何其他解决方案都无法与您的UIScrollView+SpriteKit解决方案相媲美。