在 UIImageView 上画一个简单的圆圈

Posted

技术标签:

【中文标题】在 UIImageView 上画一个简单的圆圈【英文标题】:Drawing a simple circle on the UIImageView 【发布时间】:2011-04-16 00:02:41 【问题描述】:

当视图加载到我的 ios 应用程序中时,我会动态创建一个 UIImageView 并将我的 Image 放入其中。我想,但到目前为止还不能这样做。

我编写了这段代码并尝试在收到来自另一个对象的事件时画一个圆圈...

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

我试图超越一切,但无济于事。我做错了什么?

【问题讨论】:

只是好奇,@George,为什么was this deleted 有一段时间了? 【参考方案1】:

在收到来自另一个对象的事件时尝试绘制一个圆圈。 [强调我的]

您的CGContextRefNULL,因为在您调用UIGraphicsGetCurrentContext 的地方没有图形上下文。

当您在视图的drawRect: 中时,已经为您设置了上下文,因此您可以绘制并在需要时获取当前上下文。但是,在任意方法(例如IBAction)中,可能没有可供您绘制的图形上下文。您需要创建一个,可能使用UIGraphicsBeginImageContextWithOptions,或者(最好)在您的事件处理程序方法中设置一个标志,以指示下次应该通过drawRect: 绘制额外的东西,然后调用setNeedsDisplay

【讨论】:

以上是关于在 UIImageView 上画一个简单的圆圈的主要内容,如果未能解决你的问题,请参考以下文章

在gis Map上画一个圆圈

在 QWidget python GUI 上画一个圆圈

如何在鼠标单击时在 FigureCanvasQTAgg 上画一个圆圈

在 UIImageView IOS 上绘制圆圈的最佳方法

如何使uiimageview圆圈。?

为什么UIImageview不是完美的圆圈?