在UIImageView中更改一些绘制线条的颜色和宽度

时间:2011-09-21 14:53:56

标签: iphone graphics core-graphics

我正在UIImageViewtouchesBegantouchesMoved方法中)绘制一些黑线,并且有一个UISlider用于修改这些线条的宽度和一些用于修改它们颜色的按钮。

如何使用CoreGraphics完成?

...
UIGraphicsBeginImageContext(theImage.size);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetLineWidth(context, theNewWidth);
...

谢谢

1 个答案:

答案 0 :(得分:0)

首先,你不应该试图利用UIImageView。而是创建自己的UIView子类并覆盖-drawRect:。触发这些UI控件的事件时,只需在视图类上调用-setNeedsDisplay即可重新绘制它。另外,在您的视图类上设置一些属性(例如,lineWidthlineColor)。

-drawRect:中,使用Core Graphics使用用户指定的新值重绘视图。

您可以查看Quartz 2D Programming Guide以获取有关使用Core Graphics绘图所需的所有信息。另外,请查看Apple的QuartzDemo示例项目。它展示了许多(如果不是全部)Core Graphics的功能。