我想利用 SpriteKit 中的粒子效果(也许还有其他一些东西),但我的应用程序主要植根于 UIKit。SpriteKit 框架是否允许您创建具有透明背景的场景,我可以将其放置在 UIKit 视图层次结构之上?
问问题
3894 次
3 回答
5
简短的回答是否定的。您可以将 SKView(UIView 的子类)添加到您的视图层次结构中,并将其场景设置为您自己的 SKScene。但是 SKView 有一个 backgroundcolor 属性不能清晰(默认为灰色)。在 OSX mavericks 中似乎是可能的,所以希望苹果也能在 iOS 中添加这种可能性。
于 2013-09-25T11:16:40.400 回答
3
如果您的应用主要植根于 UIKit,那么 Sprite Kit 可能不是获得漂亮视觉效果的最佳方式。一些替代方案:
- Core Animation 在
CAEmitterLayer
类中提供了一个粒子系统。 - UIKit 具有用于动画 UI 元素的动态、基于物理的行为。
于 2013-09-25T22:17:24.443 回答
1
自 iOS 8 起,Apple 已添加此功能:请参阅SKView.allowsTransparency
.
https://developer.apple.com/documentation/spritekit/skview/1519697-allowstransparency
它默认为false
,产生您看到的黑色矩形背景;但是将其设置为true
,将其背景颜色设置为.clear
,并且它可以很好地合成 UIKit 内容。
于 2017-07-24T16:21:27.683 回答