我有一个带阴影的半透明视图。我在Photoshop中嘲笑它,它不会在物体下画阴影。然后我在xcode中创建了它,但它显然确实在下面绘制了阴影。我想知道是否有办法避免这种情况。换句话说 - 阴影只出现在形状之外吗?
答案 0 :(得分:3)
您可能希望将图层的栅格化属性设置为YES,这将在其他效果(如不透明度)应用于视图之前合成阴影。
但请注意,这会对性能产生很大影响。这里有一个方便的表格,其中包含不同的影子实现及其性能影响:http://www.omnigroup.com/blog/entry/ipad_drop_shadow_performance_test/
答案 1 :(得分:1)
使用CGContextEOClip
设置排除形状的剪切路径,然后设置阴影并绘制完全不透明的形状。 this answer中有一些示例代码。