iOS 圓形頭像如何實現

2021-06-26 05:11:53 字數 1300 閱讀 7559

思路:view有乙個屬性layer,通過設定cornerradius來設定圓角的半徑,view是正方形的才能保證通過調整圓角半徑來形成圓形頭像

[view

.layer

setcornerradius:cgrectgetheight([

view

bounds])/ 2];

view.layer.maskstobounds =yes;

然後再給圖層新增乙個有色的邊框,類似qq空間頭像那樣

view.layer.borderwidth =5;

view.layer.bordercolor = [[uicolorwhitecolor] cgcolor];

view.layer.contents = (id)[[uiimageimagenamed:@"backgroundimage.png"] cgimage];

這樣就可以製作成圓形頭像了,很實用的

我知道的實現方法有三種。

1、通過image mask來操作,需要新增mask目標。

2、通過imageview的layer來操作

如下**

[cpp]view plain

copy

print?

uiimageview * imageview = [[uiimageview alloc] initwithimage:[uiimage imagenamed:@"oiuyfdsa.png"]];  

imageview.frame = cgrectmake(20.f, 20.f, 100.f, 100.f);  

imageview.layer.maskstobounds = yes;  

imageview.layer.cornerradius = 50;  

a.這種方法需要新增quarztcore框架才能操作

b.cornerradus的確定問題

3、能過**對畫布裁剪成圓形–》然後再將原始影象畫出來–》

[cpp]view plain

copy

print?

-(uiimage*) circleimage:(uiimage*) image withparam:(cgfloat) inset   

上面**注意 如果裁剪後沒有使用 cgcontextaddellipseinrect(context, rect);

cgcontextstrokepath(context); 這條** 就會引起背景為白色時看不出來任務效果。

這裡是橢圓操作

ios 裁剪圓形頭像 iOS中裁剪圓形頭像

void clipimage 0.載入 uiimage image uiimage imagenamed 阿狸頭像 1.開啟位圖上下文,跟尺寸一樣大 uigraphicsbeginimagecontextwithoptions image.size,no,0 2.設定圓形裁剪區域,正切與 2.1建立...

IOS圓形頭像的設定

在開發中我們經常會用到頭像,但是系統的uiimageview預設是矩形,然而實際開發中一般都是需要將頭像設定為圓形,今天我和大家聊兩種比較常見的設定圓形頭像的方法。第一種 設定uiimageview的稜角。很簡單 頭像的寬高必須是一致的 cgfloat height 40.0 uiimageview...

圓形頭像設計

圓形頭像嘛說到底就是張,所以自定義圓形控制項自然要繼承android原生的imgaeview,實現其中的setimagebitmap,setimagedrawable,setimageuri,setimageresource的方法。當然主要的ondraw方法也不能缺少,在其中要實現圓形頭像的繪製。這...