Волнообразный изогнутый дизайн вкладок в быстром 4.2 İOS - PullRequest
1 голос
/ 28 мая 2019

Вкладка с изогнутой волной (вверху) за центральной поднятой кнопкой.Я создал пользовательский класс для панели вкладок, используя ссылку "https://medium.com/@philipp307/draw-a-custom-ios-tabbar-shape-27d298a7f4fa"". Но на самом деле мне нужно создать кривую волну в центре панели вкладок. Я попытался поиграться с кривой Безье, но не получил точного результатацентральная кнопка. Мне не нужно ее опускать. Она нужна мне (восходящая волна). Мой код и изображения прилагаются.

func createPath() -> CGPath {

    let height: CGFloat = 37.0
    let path = UIBezierPath()
    let centerWidth = self.frame.width / 2

    path.move(to: CGPoint(x: 0, y: 0)) // start top left
    path.addLine(to: CGPoint(x: (centerWidth - height * 2), y: 0)) // the beginning of the trough

    // first curve down
    path.addCurve(to: CGPoint(x: centerWidth, y: height),
                  controlPoint1: CGPoint(x: (centerWidth - 30), y: 0), controlPoint2: CGPoint(x: centerWidth - 35, y: height))
    // second curve up
    path.addCurve(to: CGPoint(x: (centerWidth + height * 2), y: 0),
                  controlPoint1: CGPoint(x: centerWidth + 35, y: height), controlPoint2: CGPoint(x: (centerWidth + 30), y: 0))

    // complete the rect
    path.addLine(to: CGPoint(x: self.frame.width, y: 0))
    path.addLine(to: CGPoint(x: self.frame.width, y: self.frame.height))
    path.addLine(to: CGPoint(x: 0, y: self.frame.height))
    path.close()
    return path.cgPath
}

дизайн вкладок

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...