2011-10-04 23 views
5

Bir magazin'te UIView sınıfı için bazı güzel uzantıları okurum. Herhangi bir UIView'e köşe radyan veya bir alt gölge ile bir kenarlık ekleyebileceksiniz. Bu yöntemler kendileri için iyi çalışır ikenUIVIew Köşe Yarıçapı ve Gölgeler?

@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 

birlikte güzel oynamaz. Köşe yarıçapı ve gölgesi olamaz. En azından onların olmasını beklemediğin gibi değil. Sanırım masksToBounds bir yöntemde true ve diğerinde yanlış olarak ayarlanmış olduğundan.

Köşe radyüsüne ve aynı köşeye sahip bir gölge ile aynı UIView'yi nasıl alabilirim?

cevap

7

Bu bir tür eski ama aynı problemi olan daha fazla insan burada bir çözüm arayabilir.

Sanırım this post yardımcı olabilir. Yaklaşık CALayer ve köşe yarıçapı ve gölgeleri dahil olmak üzere karıştırma efektleri hakkında biraz açıklar.