我只想將視圖的形狀從Square更改爲Round。當我嘗試與角落,但只是在角落裏。因爲我想把整個視圖看成圓形。如何製作任意視圖的圓形
2
A
回答
5
UIView始終是矩形。但是,你可以使它看起來看起來圓(或任何形狀,實際上)與面具。爲此,請製作一個黑色圓圈的UIImage(在透明背景中)。現在將該UIImage的CGImage作爲CALayer的內容。最後,將CALayer設置爲您視圖層的mask
。
讓我們假設你的看法是100×100。然後(沒有測試過,但是應該是相當多的權利):
UIGraphicsBeginImageContextWithOptions(CGSizeMake(100,100), NO, 0);
CGContextRef c = UIGraphicsGetCurrentContext();
CGContextSetFillColorWithColor(c, [UIColor blackColor].CGColor);
CGContextFillEllipseInRect(c, CGRectMake(0,0,100,100));
UIImage* maskim = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
CALayer* mask = [CALayer new];
mask.frame = CGRectMake(0,0,100,100);
mask.contents = (id)maskim.CGImage;
view.layer.mask = mask;
+0
有沒有辦法做到這一點(即,掩蓋一個UIView,使其看起來像循環)在故事板,還是必須以編程方式完成? – Crashalot 2015-12-11 02:43:59
1
試試這個代碼: -
[roundView.layer setCornerRadius:50.0f];
[roundView.layer setBorderColor:[UIColor lightGrayColor].CGColor];
[roundView.layer setBorderWidth:1.5f];
[roundView.layer setShadowColor:[UIColor blackColor].CGColor];
[roundView.layer setShadowOpacity:0.8];
[roundView.layer setShadowRadius:3.0];
[roundView.layer setShadowOffset:CGSizeMake(2.0, 2.0)];
注意: - roundView是你的觀點,你想要圓。
我希望它能幫助你。由於
2
你可以讓圓角的邊框以這種方式與任何控件的邊框寬度: -
CALayer * l1 = [viewPopup layer];
[l1 setMasksToBounds:YES];
[l1 setCornerRadius:5.0];
// You can even add a border
[l1 setBorderWidth:5.0];
[l1 setBorderColor:[[UIColor darkGrayColor] CGColor]];
只需用控制代替viewPopup
。
注: -不要忘了導入<QuartzCore/QuartzCore.h>
相關問題
- 1. 如何從任意形狀的圖形制作按鈕(Corona SDK)?
- 2. 如何製作圓形方形組圖標而不是圓形圖標
- 3. 如何在cocos2d瓷磚地圖中製作圓形視線
- 4. 如何爲圓形圖像視圖繪製邊框?
- 5. 在圓形視圖中繪製文本?
- 6. 在視圖上繪製圓形
- 7. 如何做圓形滾動視圖?
- 8. 製圖任意尺寸的矩形
- 9. 如何在圓角矩形內或圓形內繪製圖像?
- 10. 視圖的圓形外觀
- 11. 任何尺寸的CSS圓形圖像
- 12. 如何在視圖上繪製自定義視圖(例如圓形)?
- 13. Xamarin.UWP:如何製作圓形進度條
- 14. 如何製作android圓形按鈕
- 15. 如何製作圓形地圖?使用谷歌地圖
- 16. 如何用PDFsharp繪製圓形圖像
- 17. 如何繪製圓角矩形標籤或視圖?
- 18. 定製的圓形圖
- 19. 如何製作用不同顏色覆蓋的圓形圖像
- 20. 如何爲滑動的圓形裁剪圖像製作邊框
- 21. 如何製作圓形圖像的部分android?
- 22. 如何製作帶有標籤的圓形圖像?
- 23. 製作視圖無遮罩圓形到邊框
- 24. 圓形列表視圖android
- 25. 我如何在任意四邊形內刻出一個矩形或圓形
- 26. 如何從任意多邊形中減去圓
- 27. Pyqtgraph:如何繪製橢圓或圓形
- 28. 如何繪製圓形libgdx
- 29. 如何製作表單圓角矩形或圓形或三角形
- 30. 如何在showcaseview中爲列表視圖製作矩形視圖
你是什麼,如果不是邊角意思? – 2013-05-10 05:27:22
可能重複[如何製作圓形UIView](http://stackoverflow.com/questions/1878595/how-to-make-a-circular-uiview) – 2013-05-10 05:28:21
因爲,如果我們得到任何視圖或imageview比,購買默認它的方形。那麼我們如何才能使它成爲沒有角落輻射的圓形?就好像視圖的大小非常高,那麼它不是實際上具有角落輻射的圓形。所以我只想重新繪製視圖並使其成形。 – Nirmalsinh 2013-05-10 05:34:33