所以我正在尝试这样做:
http://blog.typpz.com/2013/12/09/ios-sdk-create-a-pop-up-window/
但由于我没有使用 SpriteKit,我无法使用这种确切的方法。
我想应该有一种方法可以使用 Sprite 构建器图层选项创建相同的弹出窗口效果?然后使用一些现有的 CCAction 方法对其进行动画处理。我不确定,也不知道如何弄清楚。
感谢任何帮助。
Best Answer-推荐答案 strong>
一个简单的方法是创建一个 CCLayer ,就像你说的那样,并为其设置动画。
一旦你创建了一个 CCLayer 到你想要的“弹出窗口”的大小,然后添加你想要放入的任何内容,你就可以开始动画了。
如果您想获得与您链接的教程中的动画类似的效果,最好的方法是使用 CCActionFadeIn 和 CCActionScaleTo 的组合。方便的是,Spritebuilder 的动画集可以使用这两种方法,您可以在 Spritebuilder 中轻松设置关键帧动画,而无需太多代码。 (确保将动画序列命名为您可以轻松记住的名称,因为您在开始编码时需要引用它 - 我将其称为“PopupAnimation”或类似的名称。)
完成此操作后,您所要做的就是从代码中调用动画。例如,如果我有一个选择器为“showPopup”的 CCButton ,我会这样做:
func showPopup() {
self.animationManager.runAnimationsForSequenceNamed("opupAnimation")
}
假设你做的一切都正确,弹出窗口现在会出现!但是现在你被屏幕上的弹出框困住了,没有出路。
要解决此问题,请制作另一个动画序列(我称之为“RemovePopup”),它将从屏幕上移除弹出窗口。将一个按钮添加到您的 CCLayer ,并将其选择器设置为“hidePopup”。然后,您可以从您的代码中运行:
func hidePopup() {
self.animationManager.runAnimationsForSequenceNamed("RemovePopup")
}
现在您有了一个可以制作动画的“弹出”窗口!
关于ios - 如何使用 Cocos2d、SpriteBuilder 和 Objective-c 创建弹窗?,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/30939078/
|