在UIImageView上绘制一个简单的圆圈

| 当视图加载到我的iOS应用程序中时,我会动态创建一个UIImageView并将其图像放置在其中。我想在UIImageView的顶部绘制一个简单的圆圈,但是到目前为止还不能这样做。 我编写了这段代码,并试图在从另一个对象接收到事件时画一个圆圈。
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetRGBStrokeColor(context, 0, 0, 255, 0.5);
CGContextFillRect(context, CGRectMake(10, 10, 10, 10));
...但是没有任何反应,我收到一个错误。
<Error>: CGContextSetRGBStrokeColor: invalid context 0x0
<Error>: CGContextFillRects: invalid context 0x0
我试图超越一切,但无济于事。我究竟做错了什么?     
已邀请:
  尝试从另一个对象接收到事件后画一个圆。 [强调我的] 您的
CGContextRef
NULL
,因为您要呼叫
UIGraphicsGetCurrentContext
的位置没有图形上下文。 当您位于视图的“ 5”处时,已经为您设置了上下文,因此您可以进行绘制并根据需要获取当前上下文。但是,在任意方法(例如ѭ6)中,可能没有可供您绘制的图形上下文。您可能需要使用
UIGraphicsBeginImageContextWithOptions
创建一个,或者(最好)在事件处理程序方法中设置一个标志,以指示下次应通过
drawRect:
绘制一些额外的东西,然后调用
setNeedsDisplay
。     

要回复问题请先登录注册