我有一个SKShapeNode,当精灵靠近屏幕顶部时向下移动。但是我似乎无法改变画面的高度。
直接更改属性会给我错误'表达式不可分配'。
所以我尝试了这段代码:
//Move the world down
world.position = CGPointMake(0.0f, -(20.0f));
SKAction* moveDown = [SKAction moveToY:(world.position.y - 50.0f) duration:1];
[world runAction:moveDown];
CGRect temp = world.frame;
temp.size.height = (world.frame.size.height / 1.2);
world.frame = temp;
但它说我不能将该帧指定为只读。
答案 0 :(得分:3)
SKShapeNode的帧是只读的。如果要更改节点的高度,可以替换此
CGRect temp = world.frame;
temp.size.height = (world.frame.size.height / 1.2);
world.frame = temp;
用这个
world.yScale = 1.0 / 1.2;