Вкладка с изогнутой волной (вверху) за центральной поднятой кнопкой.Я создал пользовательский класс для панели вкладок, используя ссылку "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
}
дизайн вкладок