У меня есть SKShapeNode
, созданный shapeNodeWithRect: cornerRadius:
. Этот закругленный прямоугольник является дочерним элементом SKEffectNode, поэтому я могу установить shouldRasterize = YES
.
Я хотел бы изменить ширину этого узла в зависимости от прикосновения пользователя. т. е. когда они перемещают палец горизонтально вправо, прямоугольник становится больше (и уменьшается, когда они перемещают его влево).
- Я могу это сделать, заменив оригинальный
SKShapeNode
на новый с новым размером (но это плохо). - Я пытался запустить действие изменения размера для
SKEffectNode
иSKShapeNode
(но это не работает, потому что изменение размера работает только дляSKSpriteNotes
[SKAction Apple Docs — Resize]):
[self runAction:[SKAction resizeToWidth:newSize.width height:newSize.height duration:0]];
[self.shapeNode runAction:[SKAction resizeToWidth:newSize.width height:newSize.height duration:0]];
- Я мог бы изменить xScale, как в этом ответе: Изменить высоту SKShapeNode. Но если я это сделаю,
SKShapeNode
станет пиксельным.
Как мне это сделать?
В UIKit это так просто (просто установите рамку UIView)...