在Objective-C中屏蔽视图 [英] Mask a view in Objective-C

查看:110
本文介绍了在Objective-C中屏蔽视图的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

ActionScript 3 中,我们可以将掩码应用于这样的可视对象:

In ActionScript 3 we can apply a mask of to a visual object like this:

SomeVisualObject.mask = maskShapeObject; 

如何在 Objective-C 中获得类似的结果?假设我有两个 UIImageView 对象,我想要这样的东西:

How can I achieve similar result in Objective-C? Assume I have two UIImageView objects, I want something like this:

imageView1.mask = imageView2;

如何使用一个 UIImageView 来屏蔽或剪辑另一个的形状?

How can I use one UIImageView to mask, or clip the shape of, another?

推荐答案

CALayer *maskLayer = [CALayer layer];
 UIImage *maskImage = [UIImage imageNamed:@"maskImage.png"];
maskLayer.contents = (id)maskImage.CGImage;
maskLayer.bounds = (CGRect){CGPointZero, maskImage.size};

UIImageView *imageViewToMask = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 1024, 768)];
imageViewToMask.image = [UIImage imageNamed:@"image2.png"];
imageViewToMask.layer.mask = maskLayer;

这篇关于在Objective-C中屏蔽视图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆