質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

解決済

1回答

5486閲覧

[xcode]画面遷移後にタブバーが消えてしまいます。

mk_

総合スコア18

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

1グッド

1クリップ

投稿2016/08/10 07:56

編集2016/08/10 08:55

###前提・実現したいこと
xcodeでiPhoneのアプリを開発しているプログラミング初心者です。
タブバーがある画面とない画面を行き来しても、ちゃんとタブバーある画面の方にはタブバーが表示されるようにしたいです。

追記:画像の真ん中画面の「カメラを起動する」ボタンを押すと右画面に映り、右画面のButtonを押すと真ん中画面に戻る、という風にしています

###発生している問題・エラーメッセージ
追記:画像の真ん中画面の「カメラを起動する」ボタンを押すと右画面に映り、右画面のButtonを押すと真ん中画面に戻るのですが、真ん中画面のタブバーだけが表示されなくなります。

###該当のソースコード
swift
まだストーリーボートで配置だけをしている状態で、コードは触っていません

###__
プログラミング初心者で、説明が下手で申し訳有りません・・・

イメージ説明

nakamuraa👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Y_M

2016/08/10 08:28

Storyboardのスクリーンショットを貼っていただけますか?
mk_

2016/08/10 08:47

依頼ありがとうございます。画像を追加しました。
guest

回答1

0

ベストアンサー

Storyboardを見た感じだと、戻りたくて繋げているsegueがありますが、
これだと戻る動作ではなく、新しく接続しているViewを表示するため、TabBarが消えてしまいます。

戻るためには2種類あり、unwindSegueを利用し戻る方法とコードで戻る方法があります。
どちらもコードを書きますが、大した内容ではないので、難しく考えないでください。
まず共通として、戻るためにつないでいるsegueを削除してください。

1つ目のunwindSegueでは、

@IBAction func unwindToTop(segue: UIStoryboardSegue) {}

というコードを戻るためのボタンがあるViewに記載し、
storyboardで戻るボタンをCtrl+クリックでViewの上にある3つの四角のうちのExitに持って行きます。
すると先ほどコードに書いたunwindToTopが選択できるので、そちらを選択します。

2つ目のコードで戻るには、storyboardでAssistant Editorを開き、
戻るためのボタンをCtrl+クリックでコードに引っ張ります。
すると小さなウィンドウが出て、ConnectionActionを選び、
下にあるNameに好きな名前をつけTypeUIButtonを選択してConnectを押します。

class ViewController2: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } @IBAction func buttonPressed(sender: UIButton) { } }

するとこのような形になり、この下記の部分を

@IBAction func buttonPressed(sender: UIButton) {}
@IBAction func buttonPressed(sender: UIButton) { self.dismissViewControllerAnimated(true, completion: nil) }

に変えてあげて実行すれば戻ってもTabBarが表示されるはずです。
説明が下手で申し訳ないです。

投稿2016/08/10 09:15

Y_M

総合スコア265

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mk_

2016/08/10 12:56

丁寧な回答、本当にありがとうございます。 一つ目の方法を試してみたのですが、カメラを起動するボタンを押すと画面が真っ黒になってしまいました。
mk_

2016/08/10 13:13

すみません、二つ目の方法を試したら無事タブバーが表示されました! 本当にありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問