• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

ios swift 5 UIView切圆角,指定某几个角,2个,左上,左下,右上,右下

武飞扬头像
星星月亮0
帮助5


学新通

代码

extension UIView {
    //radius:切圆角的半径
    //corner:要切四个角中的哪个角
    func cornerCut(radius:Int,corner:UIRectCorner){
        let maskPath = UIBezierPath.init(roundedRect: bounds, byRoundingCorners: corner, cornerRadii: CGSize.init(width: radius, height: radius))
        let maskLayer = CAShapeLayer()
        maskLayer.frame = bounds
        maskLayer.path = maskPath.cgPath
        layer.mask = maskLayer
    }
}
class FDSpeedPresentVC: UIViewController {
    
    @IBOutlet var topView: UIView!
    
    @IBOutlet var bottomView: UIView!
    
    @IBOutlet var navigationBarMy: UINavigationBar!
    
    override func viewDidLayoutSubviews() {
        bottomView.cornerCut(radius: 50, corner: [.topLeft,.bottomRight])
        topView.cornerCut(radius: 100, corner: .allCorners)
    }

注意

  • 要在viewDidLayoutSubviews方法中(布局完成后)调用cornerCut方法。
  • 如果在viewDidLoad中调用cornerCut方法,因为view布局还没有完成,宽高还没有确定,会出现错误。我遇到在布局前调用cornerCut方法,导致collectionView不显示的情况
  • JXSegmentedView
    学新通
    学新通
    学新通

参考博客:

iOS 裁剪View指定的某几个角为圆角以及遇到的问题

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhfhabgh
系列文章
更多 icon
同类精品
更多 icon
继续加载