ios – 如何在精灵套件中创建进度条?

ios – 如何在精灵套件中创建进度条?,第1张

概述我想在Sprite Kit中创建自己的进度条. 我想我将需要图像 – 一个完全空的进度条和填充进度条. 我有这些图像,我把空白的一个填满了,他们是常规的SKSPriteNodes现在我不知道如何切割我需要的填充图像? 如何在某一点剪切SKSpriteNode图像?也许纹理? 我会推荐看看 SKCropNode.对于SKCropNode的可视化帮助,请查看 Apple Programming Gui 我想在Sprite Kit中创建自己的进度条.
我想我将需要图像 – 一个完全空的进度条和填充进度条.
我有这些图像,我把空白的一个填满了,他们是常规的SKSPriteNodes现在我不知道如何切割我需要的填充图像?

如何在某一点剪切SKSpriteNode图像?也许纹理?

解决方法 我会推荐看看 SKCropNode.对于SKCropNode的可视化帮助,请查看 Apple Programming Guide.我已经阅读了整个文档多次,这是一个非常好的阅读.

SKCropNode基本上是一个SKNode,您可以添加到您的场景中,但可以通过掩码裁剪其子节点.该掩码设置在SKCropNode的maskNode属性中.这样,您只需要一个纹理图像.我会将SKCropNode子类化以实现移动或调整掩码大小的功能,以便您可以轻松更新其外观.

@interface CustomProgressbar : SKCropNode/// Set to a value between 0.0 and 1.0.- (voID) setProgress:(CGfloat) progress;@end@implementation CustomProgressbar- (ID)init {  if (self = [super init]) {    self.maskNode = [SKSpriteNode spriteNodeWithcolor:[SKcolor whitecolor] size:CGSizeMake(300,20)];    SKSpriteNode *sprite = [SKSpriteNode spriteNodeWithImagenamed:@"progressbarImage"];    [self addChild:sprite];  }  return self;}- (voID) setProgress:(CGfloat) progress {  self.maskNode.xScale = progress;}@end

在你的场景中

#import "CustomProgressbar.h"// ...CustomProgressbar * progressbar = [CustomProgressbar new];[self addChild:progressbar];// ...[progressbar setProgress:0.3];// ...[progressbar setProgress:0.7];

注意:这个代码不会移动掩码(所以sprite将被裁剪在任何一方),但我确定你得到的想法.

总结

以上是内存溢出为你收集整理的ios – 如何在精灵套件中创建进度条?全部内容,希望文章能够帮你解决ios – 如何在精灵套件中创建进度条?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1111596.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存