iPhone SDK:如何绘制具有半透明渐变和阴影的圆角矩形

时间:2009-05-18 06:19:06

标签: core-animation core-graphics quartz-graphics gradient shadows

我正在尝试通过为我的应用程序手动创建部分UI来绘制iPhone(在本例中为图形)。基本上,我想绘制一个带圆角的矩形,一个阴影和一个半透明渐变作为矩形的填充。这是我的photoshop模型的屏幕截图: alt text http://img36.imageshack.us/img36/6097/picture1nvf.png

我已经得到了使用CALayer创建一个带阴影的实心圆角矩形,但为了让形状和投影完全显示,我必须设置背景颜色,这不允许我使我的半透明渐变成为图层的唯一填充。

我一直在研究这个问题,并阅读了整个Core Animation编程指南,但我没有取得任何进一步的进展。我觉得答案就在我的鼻子底下。

我错过了什么?

P.S.I我知道我可以使用一个图像文件来完成这个,但我正在尝试这样做,因为我想学习,有一天我想做一些更高级动画的东西。

1 个答案:

答案 0 :(得分:5)

  1. 用阴影填充圆角矩形。这样填充100%不透明度 - 你将在下一步中影响透明度。
  2. 使用目标输出混合模式,在(1.0 - 所需的不透明度)处填充不带阴影的相同圆角矩形。例如,如果您想要40%,则将目标输出绘制为60%。可以把它想象为从图像的不透明度中减去那么多。