NavigationBarの背景にグラデーション化したimageを置いています。
グラデーションの角度が上から下なのですが、左から右に変更したいです。
詳しい人いましたらよろしくお願いします。
override func viewDidLoad() { super.viewDidLoad() // for Navigation Bar Gradation Color if let navFrame = self.navigationController?.navigationBar.frame { let newframe = CGRect(origin: CGPoint(x: 0.0, y: 1.0), size: CGSize(width: navFrame.width, height: (navFrame.height + UIApplication.shared.statusBarFrame.height) )) let image = gradientWithFrametoImage(frame: newframe, colors: [UIColor(hex: "666666").cgColor, UIColor(hex: "ffffff").cgColor])! self.navigationController?.navigationBar.barTintColor = UIColor(patternImage: image) } ... // for Navigation Bar Gradation Color func gradientWithFrametoImage(frame: CGRect, colors: [CGColor]) -> UIImage? { let gradient: CAGradientLayer = CAGradientLayer(layer: self.view.layer) gradient.frame = frame gradient.colors = colors UIGraphicsBeginImageContext(frame.size) gradient.render(in: UIGraphicsGetCurrentContext()!) let image = UIGraphicsGetImageFromCurrentImageContext() UIGraphicsEndImageContext() return image }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/29 15:40