スポンサーリンク

【Swift4】UINavigationBarの下部ボーダーを消す

iOS の UINavigationController をそのまま使うと、下部にグレーの線が表示されるかと思います。
3時のOYATSU では下記の通りこの枠線を消しています。

これは UINavigationBar の shadowImage に空の UIImage をセットすることによって実現しています。
そのままUIViewControllerに書いてもいいのですが、私は UINavigationController を継承したクラスを作成し、そこに処理を書いています。

import UIKit

class OyatsuNavigationController: UINavigationController {

    override func viewDidLoad() {
        super.viewDidLoad()

        // ナビゲーションバーの下部ボーダーを消す
        navigationBar.shadowImage = UIImage()

        ...(略)
    }

    ...(略)
}

ちなみに、shadowImage に nil を設定してみましたが線は消えませんでした。

※この記事の内容は https://3jino-oyatsu.com/blog/26/ からお引越ししたものです