如何从两个图像目标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 制作一个按钮

Sprite Kit 如何更新按钮上的图像?

PNG Sprite 悬停闪烁

cocos 常用组件

如何在 jQuery 和 SASS 中制作一个轻轻闪烁的按钮?

ps_cc:制作sprite拼贴图片