gpt4 book ai didi

size - 如何对 SKNode 进行子类化以将其初始化为预定大小

转载 作者:行者123 更新时间:2023-12-04 10:38:51 25 4
gpt4 key购买 nike

SKScene 是 SKNode 的子类,我们可以将其初始化为一定的大小。但 SKNode 本身缺乏这种能力,它的大小是包含 child 的最小矩形。有时我需要我的 SKNode 拉伸(stretch)到窗口,不管内容有多小。因此,我希望能够通过添加设置其大小的能力来自定义 SKNode 类。你知道怎么做吗?

最佳答案

奇怪的是,似乎没有办法在 sprite kit 中做到这一点。您可能必须通过向您的节点添加一个透明的 SKSpriteNode 来解决:

- (id)initWithSize:(CGSize)size{
self = [super init];
if (self) {
SKSpriteNode *node = [SKSpriteNode spriteNodeWithColor:[UIColor colorWithWhite:1.0 alpha:0.0] size:size];
[self addChild:node];
node.zPosition = -1;
node.name = @"transparent";
node.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame));
}
return self;
}

现在你可以将它初始化为你想要的大小,如果你想改变节点大小,你只需要确保改变透明节点大小。

关于size - 如何对 SKNode 进行子类化以将其初始化为预定大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21837172/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com