IOS UIView层setCornerRadius为椭圆形
Posted
技术标签:
【中文标题】IOS UIView层setCornerRadius为椭圆形【英文标题】:IOS UIView layer setCornerRadius in ellipse shape 【发布时间】:2014-04-15 20:17:18 【问题描述】:我对使用UIView
制作椭圆形状有点怀疑。
我的视图有一个像w:50.0f e h:20.0f
这样的维度并使用这个命令:
[[viewElement layer] setCornerRadius:w/2];
但是这个形状不是椭圆的好形状。
我想要这个:
形状的边界变形了,我可以制作一个符合预期形状的椭圆吗?
谢谢
【问题讨论】:
你有没有试过在设置圆角半径时使用高度而不是宽度? 【参考方案1】:试试这个:
viewElement.frame = CGRectMake(0, 0, w, w);
viewElement.layer.cornerRadius = w / 2;
viewElement.transform = CGAffineTransformMakeScale(1, h / w);
【讨论】:
【参考方案2】:使用cornerRadius
是不可能制作椭圆的。您可以使用CGContextStrokeEllipseInRect 函数代替它来绘制椭圆。
【讨论】:
以上是关于IOS UIView层setCornerRadius为椭圆形的主要内容,如果未能解决你的问题,请参考以下文章