繁体   English   中英

在iPhone应用程序中绘制椭圆的最佳方法是什么?

[英]What is the best way to draw this ellipse in an iPhone app?

我想在我的iPhone应用程序中使用与Mail应用程序类似的椭圆。 仅供参考的屏幕截图如下: http//dl-client.getdropbox.com/u/57676/screenshots/ellipse.png

最后,我想要一个以数值为中心的椭圆。 是否最好使用UIImage执行此任务? 使用Quartz绘制它的开销可能更少? 如果它是用Quartz完成的,那么任何人都可以显示绘制它的解决方案吗?

啊,圆角矩形。 这不是很难画。 您可以使用Bezier路径获得所需内容。 代码如下所示:

CGRect rect;
CGFloat minX = CGRectGetMinX(rect), minY = CGFloatGetMinY(rect), maxX = CGFloatGetMaxX(rect), maxY = CGRectGetMaxY(rect);

CGFloat radius = 3.0; // Adjust as you like
CGContextBeginPath(context);
CGContextMoveToPoint(context, (minX + maxX) / 2.0, minY);
CGContextAddArcToPoint(context, minX, minY, minX, maxY, radius);
CGContextAddArcToPoint(context, minX, maxY, maxX, maxY, radius);
CGContextAddArcToPoint(context, maxX, maxY, maxX, minY, radius);
CGContextAddArcToPoint(context, maxX, minY, minX, minY, radius);
CGContextClosePath(context);

现在您的图形上下文中有一个路径,您可以使用CGContextDrawPathCGContextFillPath函数绘制它或勾勒它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM