2011-03-05 51 views

回答

11

一个UIView总是一个矩形的形状,你不能改变它。但是,您也许可以通过使用CALayer遮罩来获得所需的效果。制作一个UIView并对其应用一个自定义掩码,由此掩码在其中为三角形提供适当的数据。然后,您在UIView中放入的任何实际内容只会在相应的“三角形”区域中可见。

要制作遮罩图层,可以使用图像(例如png)或使用核心图形绘制三角形。

在苹果Quartz 2D docs有很多这方面的信息。

这里有一个例子:

http://cocoadev.com/MaskingACALayer

又见这堆栈溢出问题:

Learning Core Graphics

还有这个东西在苹果电脑公司的UIView和CALayer的API文档信息。