iphone - 如何创建圆形 UIview 而不是矩形

标签 iphone uiview

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

最佳答案

从技术上讲,所有 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确定触摸是否在圆的范围内并采取相应的行动。

关于iphone - 如何创建圆形 UIview 而不是矩形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15459495/

相关文章:

iphone - 为什么页面控件点从一页变为下一页

iphone - UIView 链 block 动画,延迟不能正常工作

swift - 在 uitableview 上面添加 uiview

ios - 如何知道 UIView 的当前比例?

iphone - 使用 UITabBar 在 iOS 6 中自动旋转单个 UIViewController

iphone - MKMapView错误

iphone - 在 Dropbox 上上传图片时出错

ios - 我的自定义 UIView 未从 SuperView 中删除

ios - UITextField不能随着键盘启动移动到正确的位置

cocoa-touch - 当 UIView 可见时如何得到通知?