如果把檢視裁剪圓形,我們通常會使用給乙個檢視加圓角的方法。
view.layer
.maskstobounds = yes;
view.layer
.cornerradius = view.frame
.size
.width/2
;
但如果需求是裁剪某一部分,如圖所示
裁剪成如下的樣子:
這樣,上面的方法就不奏效了。
這個時候使用layer的mask的屬性,能夠簡單的解決這個問題。
**如下:
建立maskview
maskview = [[uiview alloc]init];
maskview.backgroundcolor = [uicolor clearcolor];
maskview.frame = cgrectmake(0, 0, 275, 155);
[imageview addsubview:maskview];
建立 circlelayer
cashapelayer *circlelayer = [cashapelayer layer];
cgpoint fcirclrcenter = cgpointmake(maskview.center
.x+15, maskview.center
.y);
circlelayer.path = ([uibezierpath bezierpathwitharccenter:fcirclrcenter radius:70 startangle:0 endangle:2*m_pi clockwise:yes]).cgpath
; [maskview.layer addsublayer:circlelayer];
maskview.superview
.layer
.mask = circlelayer;
巧妙的使用mask還可以實現更多效果。以後慢慢探索。 遮罩應用 1 簡單遮罩效果
說實在,遮罩在flash應用相當普遍,畢竟應用它能夠產生一些很不錯的效果。什麼是遮罩技術?具體的,我不能給以解析,簡單形容像井底之蛙看到世界一樣。姑且是乙個很不恰當的形容。好,我們來做乙個探明的效果。準備好一張。接下來,嘗試匯入到flash裡面去 下面是寫在時間軸上的 使用loader類載入我們想要...
Starling2 x 遮罩Mask的使用
在startling裡的displayobject物件會存在乙個mask的變數,可以把各種形狀賦值進去,來得到乙個新的圖形。其形狀不止侷限於矩形,甚至多邊形,圓形或者更複雜的組合。這一切可以使用canvas來實現多邊形圓形。var image image new image texture var ...
Unity之UGUI的學習(四) Mask(遮罩)
mask 遮罩 是一種不可見的ui元件,它可以用來修改子物體的外觀。遮罩將子物體限制為父物體的形狀。如果子物體大於父物體將只顯示和父物體大小相同的那一部分。如上圖所示,在父物體image中新增子物體image,父物體image上新增元件mask,可以發現子物體image本來是大於父物體image的,...