Ios 使用spritekit和UITouch绘制直线可创建多条直线
应该很简单 我试着用UITouch和Spritekit画一条直线。但是,当调用touchesmoved时,它会创建多行,而不仅仅是一行。使用的代码如下:Ios 使用spritekit和UITouch绘制直线可创建多条直线,ios,objective-c,sprite-kit,uitouch,Ios,Objective C,Sprite Kit,Uitouch,应该很简单 我试着用UITouch和Spritekit画一条直线。但是,当调用touchesmoved时,它会创建多行,而不仅仅是一行。使用的代码如下: -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { UITouch *touch = [touches anyObject]; positionInScene1 = [touch locationInNode:self]; pathToDr
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *touch = [touches anyObject];
positionInScene1 = [touch locationInNode:self];
pathToDraw = CGPathCreateMutable();
selectorLine = [SKShapeNode node];
selectorLine.strokeColor = [SKColor greenColor];
selectorLine.lineWidth = 5;
[self addChild:selectorLine];
}
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
pathToDraw2 = CGPathCreateMutable();
UITouch* touch = [touches anyObject];
positionInScene2 = [touch locationInNode:self];
CGPathMoveToPoint(pathToDraw2, NULL, positionInScene1.x, positionInScene1.y);
CGPathAddLineToPoint(pathToDraw2, NULL, positionInScene2.x, positionInScene2.y);
CGPathCloseSubpath(pathToDraw);
selectorLine.path = pathToDraw;
}
如果我搬家
CGPathAddLineToPoint(pathToDraw, NULL, positionInScene2.x, positionInScene2.y);
touchesEnd只在用户结束触摸后创建一行。我希望用户在触摸时看到绘制的线条
谢谢,
Doug在您的TouchsMoved中创建新路径。您正在修改同一路径,只是在其中添加了越来越多的行。在TouchsMoved中创建新路径。您正在修改同一路径,只是在其中添加了越来越多的行。在TouchsMoved中创建新路径。您正在修改同一路径,只是在其中添加了越来越多的行。在TouchsMoved中创建新路径。您正在修改同一路径,只是在其中添加越来越多的行。从何处到何处有多行?每个从起点到当前触摸位置的附加线,或先前和当前触摸位置之间的附加线?从何处到何处的多条线?每个从起点到当前触摸位置的附加线,或先前和当前触摸位置之间的附加线?从何处到何处的多条线?每个从起点到当前触摸位置的附加线,或先前和当前触摸位置之间的附加线?从何处到何处的多条线?每个从起点到当前触摸位置的附加线,或者上一个和当前触摸位置之间的附加线?真不敢相信我错过了!谢谢,泰斯。希望上面的代码能帮助其他新手sprtiekit devs,我真不敢相信我错过了!谢谢,泰斯。希望上面的代码能帮助其他新手sprtiekit devs,我真不敢相信我错过了!谢谢,泰斯。希望上面的代码能帮助其他新手sprtiekit devs,我真不敢相信我错过了!谢谢,泰斯。希望上面的代码能帮助其他新手开发人员