我不希望在这里得到非常详细的答案,而只是指出正确的方向。
假设我想制作一个像 microsoft paint 这样的绘图程序或应用程序绘制一些东西,我该怎么做?
当我用鼠标悬停并单击时,我是否基本上在像素和附近像素(用于厚度)上设置颜色?
我打算制作一个要求用户以简单的方式绘制东西的应用程序,所以任何建议都会非常有用:)
最好的问候,亚历山大
UIBezierPath
是在您的 .For Drawing 上绘制线条的好选择,UIView
您需要一个自定义视图您不能在 UIViewController 上绘制。
并使用触摸委托方法来绘制线条。
声明一个UIBezierPath *bezierPath;
in .h 文件
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
bezierPath=[[UIBezierPath alloc]init];
bezierPath.lineWidth = 5.0;
UITouch *mytouch=[[touches allObjects] objectAtIndex:0];
[bezierPath moveToPoint:[mytouch locationInView:self]];
}
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *mytouch=[[touches allObjects] objectAtIndex:0];
[bezierPath addLineToPoint:[mytouch locationInView:self]];
[self setNeedsDisplay];
}
setNeedsDisplay
会调用你的drawRect:
方法。
- (void)drawRect:(CGRect)rect
{
[bezierPath stroke];
}
您可以使用属性更改 Storke 颜色。setStroke:
完整的想法通过UIBezierPath类参考。希望这对你有帮助