我只想将视图的形状从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. 如何制作圆形图像
- 4. 如何制作圆形TextView
- 5. 如何制作圆形方形组图标而不是圆形图标
- 6. 如何在cocos2d瓷砖地图中制作圆形视线
- 7. 如何制作明亮的圆形/圆形线索渲染器?
- 8. 如何制作圆形的椭圆形按钮?
- 9. 围绕任意轴的圆形旋转
- 10. 如何为圆形图像视图绘制边框?
- 11. 在圆形视图中绘制文本?
- 12. 在视图上绘制圆形
- 13. 制图任意尺寸的矩形
- 14. 如何做圆形滚动视图?
- 15. 制作圆形FrameLayout
- 16. 如何在圆角矩形内或圆形内绘制图像?
- 17. 如何为圆形图像按钮制作圆形背景选择器?
- 18. 视图的圆形外观
- 19. 圆形图像视图
- 20. 任何尺寸的CSS圆形图像
- 21. 如何在视图上绘制自定义视图(例如圆形)?
- 22. 我如何制作圆形QLabel?
- 23. 如何制作div角落椭圆形?
- 24. Xamarin.UWP:如何制作圆形进度条
- 25. 如何制作圆形UIPickerView(iPhone/iPad)?
- 26. 如何制作android圆形按钮
- 27. 如何制作圆形按钮
- 28. 如何用PDFsharp绘制圆形图像
- 29. 如何制作圆形地图?使用谷歌地图
- 30. 如何绘制圆角矩形标签或视图?
你是什么,如果不是边角意思? – 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