2013-03-17 124 views

回答

1

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

#import <QuartzCore/QuartzCore.h> 

yourView.layer.cornerRadius = 20; 
2

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

  1. 使用UIImageView并将其设置为图像为圆形图像。这很容易,但不是很灵活。
  2. 学习Core Graphics(也称为Quartz2D)并在UIView的-drawRect:方法中画一个圆。 Quartz 2D Programming Guide
  3. 对UIView的图层使用CAShapeLayer。 CAShapeLayer Class Reference

当然还有其他方法,但这应该是一个好的开始。如果您需要检测圆圈内的触摸,则可以使用选项2或3,并保留对CGPathRef(或UIBezierPath)的引用,并使用CGPathContainsPoint来确定触摸是否在圆的范围内并相应地执行操作。

相关问题