2011-10-04 178 views
5

在杂志中,我读到了关于UIView类的一些很好的扩展。你将能够添加一个角落弧度或投影到任何UIView的边界。UIVIew角半径和阴影?

@implementation UIView (Extentions) 

-(void) enableRoundRectsWithValue:(float)value 
{ 
    self.layer.masksToBounds = true; 
    self.layer.cornerRadius = value; 
} 

-(void) enableShadow 
{ 
    self.layer.masksToBounds = false; 
    self.layer.shadowOffset = CGSizeMake(0,2); 
    self.layer.shadowOpacity = 0.5; 
} 
@end 

尽管这些方法对自己来说工作得很好,但它们并没有很好的结合在一起。我不能有角落半径和阴影。至少不像你期望的那样。我猜是因为在一种方法中将masksToBounds设置为true,而在另一种方法中将false设置为false。

我怎样才能得到一个角落半径和阴影(具有相同的角半径)的UIView?

回答

7

这是一种古老的,但更多的人有同样的问题可以到这里寻找解决方案。

我想this后可以提供帮助。它解释了一些关于CALayer以及混合效果,包括角落半径和阴影。