您的位置:首页 > 其它

CALayer遮罩效果

2016-03-13 22:39 295 查看
#import "ViewController.h"

@interface ViewController ()

@property (nonatomic,
strong) CALayer *imageLayer;
@property (nonatomic,
strong) CALayer *maskLayer;

@property (nonatomic,
strong) UIImage *imageContents;
@property (nonatomic,
strong) UIImage *maskImageContents;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super
viewDidLoad];

    //获取图片
    _imageContents = [UIImage
imageNamed:@"原始图片"];
    _maskImageContents = [UIImage
imageNamed:@"遮罩图片"];

    //创建图片layer
    _imageLayer = [CALayer
layer];
    _imageLayer.frame =
CGRectMake(50,
50, 200,
200);
    _imageLayer.contents = (__bridge
id _Nullable)(_imageContents.CGImage);
    [self.view.layer
addSublayer:_imageLayer];
    
    //创建遮罩layer
    _maskLayer = [CALayer
layer];
    _maskLayer.frame =
_imageLayer.bounds;
    _maskLayer.contents =  (__bridge
id _Nullable)(_maskImageContents.CGImage);
    
    //给图片layer提供遮罩
    _imageLayer.mask =
_maskLayer;
}

- (void)didReceiveMemoryWarning {
    [super
didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: