Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 调整大小时如何调整子节点在SKSpriteNode内的大小?_Ios_Objective C_Sprite Kit_Skspritenode - Fatal编程技术网

Ios 调整大小时如何调整子节点在SKSpriteNode内的大小?

Ios 调整大小时如何调整子节点在SKSpriteNode内的大小?,ios,objective-c,sprite-kit,skspritenode,Ios,Objective C,Sprite Kit,Skspritenode,我正在为我的游戏创建一个虚拟游戏板,它有一个带有圆形图像的主SKSpriteNode和四个带有图像的子节点(上、下、左、右)。当我为所有节点使用默认大小时,它看起来很完美,但它的大小很大,当我尝试调整主圆的大小时,它的所有子节点都比其父节点大,并且我无法计算适合每个条件的子节点的大小(主节点的大小不同) 使用默认大小时 根据设备大小调整大小时 编辑1:添加操纵杆和调整代码 Joystick *joystick = [[Joystick alloc] initWithJoystickImage

我正在为我的游戏创建一个虚拟游戏板,它有一个带有圆形图像的主SKSpriteNode和四个带有图像的子节点(上、下、左、右)。当我为所有节点使用默认大小时,它看起来很完美,但它的大小很大,当我尝试调整主圆的大小时,它的所有子节点都比其父节点大,并且我无法计算适合每个条件的子节点的大小(主节点的大小不同)

使用默认大小时

根据设备大小调整大小时

编辑1:添加操纵杆和调整代码

Joystick *joystick = [[Joystick alloc] initWithJoystickImage:@"cricle.png" upImage:@"up.png" downImage:@"down.png" leftImage:@"left.png" rightImage:@"right.png"];
    joystick.size=CGSizeMake(DeviceHeight/3, DeviceHeight/3);
    joystick.position=CGPointMake(DeviceWidth/2-joystick.frame.size.width/2, -DeviceHeight/2+joystick.frame.size.height/2);

您只需更改父节点的大小(
操纵杆
)。这将同时调整父节点和子节点的大小:

[joystick runAction:[SKAction scaleTo:2.0/3.0 duration:0.0]];  // Change scale value

如何调整节点的大小<代码>[SKAction scaleTo]?
scaleTo:2/3
不起作用,但
scaleTo:.5
起作用,但在缩放其位置时也会发生变化,我不希望that@VarunNaharia我的错,刻度应该是浮点数。你改变操纵杆的固定点了吗?如果定位点为(0.5,0.5),则将从中心缩放,因此不会更改位置。
[joystick runAction:[SKAction scaleTo:2.0/3.0 duration:0.0]];  // Change scale value