我似乎無法通過CALayers添加蒙版。我只是試圖掩蓋一個UIImageView。這裏是我的代碼:(?是掩蓋這種正確的方法)使用CALayers添加蒙版
CALayer *maskLayer = [CALayer layer];
UIImage *mask = [UIImage imageNamed:@"mask.png"];
maskLayer.contents = mask;
UIImageView *viewToMask = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 1024, 768)];
viewToMask.image = [UIImage imageNamed:@"picture.png"];
viewToMask.layer.mask = maskLayer;
[self.view addSubview:viewToMask];
Mask.png是黑色,透明圈通過它打孔。我不確定這是否失敗,可能是maskLayer.contents
,因爲它應該是CGImageRef
,但當我將它設置爲mask.CGImage
或通過本地變量CGImageRef = mask.CGImage
時,我會收到錯誤。無論如何,它現在的方式不會給出錯誤,所以我希望它很好。
有誰知道發生了什麼,或者如何正確設置CALayers的面罩?由於
嘿,感謝你的幫助上設置罩框原來的問題,我試圖通過你的建議。無論如何,這似乎也沒有伎倆。我沒有看到任何面具或我的viewToMask。 – user339946 2012-03-07 03:56:51
@ user339946:您可能需要定義'maskLayer'的'bounds'。 – 2012-03-07 04:25:47
框架爲我工作,界限沒有。 – 2013-07-21 12:44:42