我现在有一个像面膜我想用掩盖一个UIScrollView。 滚动视图持有1周的UIImageView。
以下是我在viewDidLoad中时刻做到:
CALayer *mask = [CALayer layer];
mask.contents = (id)[UIImage imageNamed:@"ScrollMask.png"].CGImage;
mask.frame = CGRectMake(0, 0, 512, 384);
[Scroll1.layer setMask:mask];
此作品在一定程度上。 它掩盖了滚动视图内的ImageView,但没有滚动视图本身。
有没有办法来掩盖滚动视图的CALayer的,而不是的ImageView层?
你应该把的UIScrollView到一个UIView,然后将面膜敷到的UIView而不是UIScrollView的。
CALayer *mask = [CALayer layer];
mask.contents = (id)[UIImage imageNamed:@"ScrollMask.png"].CGImage;
mask.frame = CGRectMake(0, 0, 512, 384);
UIView *containerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 512, 384)];
[containerView.layer setMask:mask];
[containerView addSubview:Scroll1];
[self.view addSubview:containerView];