如何在Objective C中只绘制UIView的顶角而不是整个视图?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Objective C中只绘制UIView的顶角而不是整个视图?相关的知识,希望对你有一定的参考价值。
我是ios的新手,我正面临着关于曲线UIView的问题。我想在图像中像这样弯曲UIView顶部的半径
正如您可以看到我的工作视图的屏幕截图。
我正在使用这样的代码
UIBezierPath *maskPath = [UIBezierPath
bezierPathWithRoundedRect:ViewSwapMyWork.bounds
byRoundingCorners:(UIRectCornerTopLeft | UIRectCornerTopRight)
cornerRadii:CGSizeMake(70, 70)
];
CAShapeLayer *maskLayer = [CAShapeLayer layer];
maskLayer.frame = ViewSwapMyWork.bounds;
maskLayer.path = maskPath.CGPath;
ViewSwapMyWork.layer.mask = maskLayer;
答案
首先你的视图应该有相同的高度和宽度意味着它应该是正方形,那么你可以这样做,
[ViewSwapMyWork.layer setCornerRadius:ViewSwapMyWork.frame.size.width/2];
[ViewSwapMyWork.layer setMasksToBounds:YES];
以上是关于如何在Objective C中只绘制UIView的顶角而不是整个视图?的主要内容,如果未能解决你的问题,请参考以下文章
如何获取嵌套在 UIView 中的 UIView 框架 - Objective C
如何使用Objective C在UItableView中增加UIView高度?
如何在 Objective C 中为浮动 UIView 设置动画
如何在Objective C中通过UIView获取UIAlertController?