当一行返回到前一行时,我在UIBezierPath中得到一个剪切的LineJoin.如果我将第二行调整一个像素,则LineJoin的行为与预期一致.这是代码:
UIBezierPath *path = [UIBezierPath bezierPath]; [path setLineWidth:10.0f]; [path setLineCapStyle:kCGLineCapRound]; [path setLineJoinStyle:kCGLineJoinRound]; [path moveToPoint:CGPointMake(100,100)]; [path addLineToPoint:CGPointMake(200,100)]; [path addLineToPoint:CGPointMake(150,100)]; [path moveToPoint:CGPointMake(100,120)]; [path addLineToPoint:CGPointMake(200,120)]; [path addLineToPoint:CGPointMake(150,121)]; [[UIColor redColor] setStroke]; [path stroke];
这是一个错误吗?
如果没有,有没有办法让顶部路径LineJoin被舍入? (没有捏造积分)
当我从“触摸输入”制作UIBezierPath时出现了这种情况,并且在有时会乱涂乱画时发生这种情况.
解决方法
这已在iOS 7中修复. Open Radar也更新了.