在我的iPhone应用程序中,我有两个UIImageViews是圆圈。 我用这个代码:
manPic.layer.cornerRadius=manPic.frame.size.width/2;
manPic.layer.masksToBounds=YES;
womanPic.layer.cornerRadius=womanPic.frame.size.width/2;
womanPic.layer.masksToBounds=YES;
两个圆圈有一些重叠的区域,我希望这个区域只有半透明,以便用户可以一起看到这两个图像。 这个区域不是一个正方形(这很明显,因为它是我们正在谈论的圈子)。
你知道怎么做吗?答案 0 :(得分:1)
如果你确实只希望重叠区域是透明的,你可能需要通过具有相当掩蔽逻辑的coregraphics来绘制图像。
但是不需要自定义绘图代码的想法(如果周围视图的颜色是单一纯色)。将两个图像放在视图上。然后在图像顶部添加另一个方形大小的视图以“掩盖”重叠区域。为该视图启用剪裁.clipsToBounds = YES
。再将两张图片添加到该视图,并将.alpha
设置为0.5
(或您想要的)。
所以结构将是:
mainview
-> imageView
-> imageView
-> masking view (clipsToBounds=YES, backgroundColor=mainview.backgroundColor)
-> imageView with alpha
-> imageView with alpha