2016-12-21 4 views
-1

나는 UIView이고 self.layer.maskCAShapeLayer으로 설정했습니다. 서브 뷰로 UILabel을 추가하면 UILabel이 적절하게 마스크 처리되지만, UIImageView을 추가하면 마스크가 무시됩니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까? 수퍼 뷰 마스크를 존중하도록하기 위해 UIImageView에 설정해야하는 속성이 있습니까?UIImageView가 superview.layer.mask를 존중하는 방법

내가 직접 내가 표시 할 CGImageUIViewself.layer.contents을 설정하는 대신 하위 뷰으로 UIImageView를 추가하여 원하는 결과를 얻을 수 있지만 하나의 UIImage을 처리.

+0

UIImageView를 마스킹하는 것은 완전히 합법적이며 정상적인 동작입니다. 그것이 작동하지 않으면, 당신은 뭔가 잘못하고 있어요. 코드를 보여주세요! – matt

+0

의도 한대로 코드를 보여줄 수 있습니까? – MailE

답변

1

당신이 스크린 샷 등의 UIImageView에 대한 완벽하게 작품을 설명하는 것은 보여줍니다

enter image description here의 마스크와 같은 (에 "타원형"경로) CAShapeLayer와보기입니다

하위보기로 UIImageView.

0

문제는 UIImageView 프레임이 완전히 보이는 영역 내에 들어가도록 조정 되었기 때문에 클리핑이 없음을 알 수있었습니다. 이것은 기존의 복잡한 코드가 변경된 것이므로 지금 당장 보지 못했습니다.

+0

그러나 당신은 그것을 밝히지 않았습니다. 당신이 실제로 물었던 것을 기반으로, 내 대답은 UIImageView 인 하위 뷰가이 문제와 관련이 없으므로 경로에 설정한다는 것을 입증했습니다. – matt

+0

네, 그 이유는 당신의 대답을 upvoted. – user1055568