如何创建圆形UIview而不是矩形形状

时间:2013-03-17 09:58:19

标签: iphone uiview

嗨,在我的应用程序中,我需要一个圆形而不是矩形的视图。如何创建圆形的uiview对象请告诉我。提前谢谢。

2 个答案:

答案 0 :(得分:2)

从技术上讲,所有UIView都将是“矩形”,这意味着它们将使用{x,y}坐标放置在屏幕上,并且它们的尺寸将使用高度和宽度(使它们成为矩形)。但是,在UIView的范围内,你可以做很多事情使它看起来像一个圆圈。以下是一些方法:

  1. 使用UIImageView并将其设置为图像为圆形图像。这很容易,但不是很灵活。
  2. 学习核心图形(也称为Quartz2D)并在UIView的-drawRect:方法中绘制一个圆。 Quartz 2D Programming Guide
  3. 对UIView的图层使用CAShapeLayer。 CAShapeLayer Class Reference
  4. 当然还有其他方法,但这应该是一个好的开始。如果需要检测圆圈内的触摸,可以使用选项2或3.并保留对CGPathRef(或UIBezierPath)的引用,并使用CGPathContainsPoint确定触摸是否在圆的范围内并采取相应的行动。

答案 1 :(得分:1)

您可以设置视图图层的cornerRadius。

#import <QuartzCore/QuartzCore.h>

yourView.layer.cornerRadius = 20;