如何从两个图像目标c sprite节点制作闪烁按钮
Posted
技术标签:
【中文标题】如何从两个图像目标c sprite节点制作闪烁按钮【英文标题】:How to make blinking button from two images objective c sprite node 【发布时间】:2016-11-24 15:05:16 【问题描述】:我想使用 sprite Kit 从两个图像创建闪烁按钮,现在我有了:
resButt = [SKSpriteNode spriteNodeWithImageNamed : @"retry.png"]
我看到了几篇关于如何使用 UIButton 进行操作的帖子,但我的问题是如何使用 Objective c 在 Sprite Kit 中进行操作?
【问题讨论】:
【参考方案1】:所需的东西是SKAction
,它可以改变精灵的纹理(应用于几何的图像)。如果您的意思是无限期地“眨眼”,则必须重复该动作,并且也有相应的动作。
// create textures for the sprite
UIImage *imageA = [UIImage imageNamed:@"retryA.png"];
UIImage *imageB = [UIImage imageNamed:@"retryB.png"];
SKTexture *textureA = [SKTexture textureWithImage:imageA];
SKTexture *textureB = [SKTexture textureWithImage:imageB];
// create an action that applies the textures in sequence
NSArray *textures = @[textureA, textureB];
SKAction *blink = [SKAction animateWithTextures:textures timePerFrame:0.5];
// create an action that repeats the texture sequence
SKAction *blinkForever = [SKAction repeatActionForever:blink];
// run it
[myButtonSprite runAction:blinkForever withKey:@"blinkForever"];
当然,永远是很长的时间,所以这就引出了如何停止眨眼的问题。这就是为什么我们在上面的运行操作中添加了withKey:
限定符。有了它,你可以参考动作来停止它。
[myButtonSprite removeActionForKey:@"blinkForever"];
【讨论】:
以上是关于如何从两个图像目标c sprite节点制作闪烁按钮的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Sprite 套件中为 touchesBegan 制作一个按钮