// viewTable.layer.cornerRadius=12.0f;
// viewTable.layer.masksToBounds=NO;
基本操作代码如下:
(如果设置masksToBounds为YES,那么阴影就会无效,下面代码可以解决这个问题。通过两个layer,一个实现阴影,一个圆角图片)
CALayer *sublayer = [CALayer layer];
sublayer.backgroundColor = [UIColor blueColor].CGColor;
sublayer.shadowOffset = CGSizeMake(0, 3);
sublayer.shadowRadius = 5.0;
sublayer.shadowColor = [UIColor blackColor].CGColor;
sublayer.shadowOpacity = 0.8;
sublayer.frame = CGRectMake(30, 30, 128, 192);
sublayer.borderColor = [UIColor blackColor].CGColor;
sublayer.borderWidth = 2.0;
sublayer.cornerRadius = 10.0;
[self.view.layer addSublayer:sublayer];//每个UIView都包括一个root layer
CALayer *imageLayer = [CALayer layer];
imageLayer.frame = sublayer.bounds;
imageLayer.cornerRadius = 10.0;
imageLayer.contents = (id) [UIImage imageNamed:@"BattleMapSplashScreen.jpg"].CGImage;
imageLayer.masksToBounds = YES;//如果背景是图片的话设置layer圆角后图片不会更随圆角,需要设置masksToBounds为YES
[sublayer addSublayer:imageLayer];