画面を上下スクロールした際にナビゲーションバーの高さを小さくしたり元に戻したりした時に、ナビゲーションのタイトル画像や戻るボタンなども一緒に大きさを変えることはできるでしょうか?
####ナビゲーションの設定
override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) // タイトル画像 let titleImage = UIImageView(image: titleImage) titleImage.contentMode = .scaleAspectFit navigationItem.titleView = titleImage // 戻るボタン navigationItem.leftBarButtonItem = UIBarButtonItem.navigationBack(target: self, action: #selector("pop処理へ")) } private func setupDefaultNavigationBar(with viewController: UIViewController, navigationController: UINavigationController?, titleImage: UIImage) { }
####スクロール判定の部分
// 下にスクロール if beginingPoint.y < currentPoint.y { // ナビゲーションの高さを小さくする (タイトル画像と戻るボタンも小さくしたい) navigationController?.navigationBar.frame = CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: 40) // 上にスクロール } else { // ナビゲーションの高さを元に戻す (タイトル画像と戻るボタンも元に戻したい) navigationController?.navigationBar.frame = CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: 64) }
現在上記のように作ってます。
スクロール部分にどのような実装をすれば「タイトル画像」と「戻るボタン」の変更ができるかわかりません。
アドバイスの程、よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。