QUOIT Blog

[Swift]特定のタブを表示したときだけtabBarを非表示にする

久しぶりに技術ネタの投稿です。今回はSwift。

環境は
Xcode 8.2.1
Swift 3.0.2
です。

いくつかのサイトを見て、先行事例があったのでいくつか試してみました。

画面遷移したときに下部のタブバーを一時的に消す – swift life
http://swiftlife.hatenablog.jp/entry/2016/04/06/004516

特定のページだけTabBarを非表示にする – Qiita
http://qiita.com/kasamax/items/ce9a8f03eb4a826a6937

画面遷移時にUITabBarを隠す – Qiita
http://qiita.com/sl2/items/1647bdb7dfbc7e4937f2

大きく2種類の方法があるようでした。
1. 遷移時にコードで非表示にする
2. Storyboardで設定して非表示にする

しかし、何故か記載されている方法では非表示にできず・・
僕の環境だけなんでしょうか・・
結局、いろいろ試してみたところ、下記の方法で非表示にできました。

遷移先の ViewController の viewDidLoad()内 にて下記のコードを追加

self.tabBarController?.tabBar.isHidden = true;

これを記載するだけで、他のタブに遷移した際には元に戻って表示されました。
何だか気持ち悪い挙動ではありますが・・

Swiftはあんまりやってないけど、Objective-C よりは親しみやすいなーって思います。

Comments are closed.