我想利用SpriteKit中的粒子效果(可能还有其他一些东西),但我的应用程序主要植根于UIKit。 SpriteKit框架是否允许您创建具有透明背景的场景,我可以将其置于UIKit视图层次结构之上?
答案 0 :(得分:5)
简短的回答是否定的。 您可以将SKView(UIView的子类)添加到视图层次结构中,并将其场景设置为您自己的SKScene。但是SKView有一个backgroundcolor属性,无法清除(默认为灰色)。 在OSX mavericks中似乎是可能的,所以希望苹果也会在iOS中增加这种可能性。
答案 1 :(得分:3)
如果您的应用程序主要植根于UIKit,Sprite Kit可能不是获得漂亮视觉效果的最佳方式。一些替代方案:
CAEmitterLayer
类中提供了一个粒子系统。答案 2 :(得分:1)
从iOS 8开始,Apple已添加此功能:请参阅false
。
https://developer.apple.com/documentation/spritekit/skview/1519697-allowstransparency
默认为true
,产生您看到的黑色矩形背景;但是将其设置为.clear
,将其背景颜色设置为{{1}},并且它可以很好地合成UIKit内容。
更多信息:Removing Background of SKView - Particle Emitter - SpriteKit