2016-12-21 42 views
-1

我有一個UIViewself.layer.mask設置爲CAShapeLayer。如果我添加一個UILabel作爲子視圖,UILabel已被正確屏蔽,但如果我添加一個UIImageView,屏蔽將被忽略。我究竟做錯了什麼?我需要在UIImageView上設置一個屬性,以尊重超級面具嗎?如何讓UIImageView尊重其superview.layer.mask

我能得到我想要通過UIViewself.layer.contents設置直接向CGImage我想顯示,而不是加入UIImageView作爲一個子視圖的結果,但僅僅處理一個UIImage

+0

屏蔽UIImageView是完全合法的,並且是正常行爲。如果它不工作,你做錯了什麼。顯示你的代碼! – matt

+0

你能告訴你打算做什麼嗎? – MailE

回答

1

你所描述的作品非常清楚對於一個UIImageView,因爲這個屏幕截圖展示:

enter image description here

這是一個CAShapeLayer作爲掩模和視圖(帶有「橢圓形」路徑) UIImageView作爲它的子視圖。

0

問題是UIImageView幀被調整完全落在可見區域內,所以沒有明顯的剪切。這是對一些複雜的現有代碼的改變,所以我沒有馬上看到它。

+0

但你沒有透露。根據你實際詢問的內容,我的答案向你證明你的子視圖是一個UIImageView,與這個問題沒有任何關係,因此將你設置在路徑上。 – matt

+0

是的,這就是爲什麼我upvoted你的答案。 – user1055568

相關問題