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

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

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

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

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

Swift

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

Q&A

解決済

1回答

2657閲覧

[Swift][Storyboard]UINavigationControllerを用いた画面遷移の実装でアプリが立ち上がらない。

mayo1983

総合スコア10

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

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

Swift

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

0グッド

0クリップ

投稿2022/09/27 15:15

前提

swift、StoryboardでiOSのアプリを開発しています。

実現したいこと

UINavigationControllerを使用し画面遷移をしたいです。

発生している問題・エラーメッセージ

シミュレータ、実機でビルドしたところ、下記のようなメッセージがコンソールに表示され、アプリが立ち上がりません。

2022-09-27 23:40:41.569228+0900 ColorMemoApp_Storyboard[76480:1873543] [Assert] UINavigationBar decoded as unlocked for UINavigationController, or navigationBar delegate set up incorrectly. Inconsistent configuration may cause problems. navigationController=<UINavigationController: 0x137822c00>, navigationBar=<UINavigationBar: 0x135f06ae0; frame = (0 47; 0 50); opaque = NO; autoresize = W; layer = <CALayer: 0x600001a3e8e0>> delegate=0x137822c00

実際のソースコード

画像のように、Is Initial View Controllerを設定したUINavigationControllerの画面を、
作成したHomeViewControllerクラスを設定した画面に、
root View Controllerを選択しセグエで繋いでいます。
イメージ説明

作成したHomeViewControllerクラスは下記のような内容で、
オーバーライドしたviewDidLoad()のprintは、実行時エラーメッセージの後にコンソールに出力されています。

// // HomeViewController.swift // ColorMemoApp_Storyboard // // Created by MacBookPro on 2022/09/27. // import Foundation import UIKit class HomeViewController: UIViewController{ override func viewDidLoad() { print("test") } }

試したこと

前述のようにコンソール出力はできること(クラスの紐付けはできていること)を確認しました。

swift初学者で、講座受講中に簡単なサンプルアプリを作っていたところ、
NabigationBarの設定でつまづきました。
講座の手順通り実施しているため、バージョンの違いなどで出た差異かと思いますが、
上手く解決につながる情報を見つけられませんでした。
お知恵お貸しいただけないでしょうか。

補足情報(FW/ツールのバージョンなど)

Xcode:14.0

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

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

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

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

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

hoshi-takanori

2022/09/27 18:44

[Assert] UINavigationBar decoded as unlocked for UINavigationController というメッセージはこちらでも出ますね。iOS 16 (Simulator だけかも?) の問題のようです。 https://developer.apple.com/forums/thread/714278 が、これはあくまで警告で、アプリ自体は動くので、原因は他のところにあるのでは…。 「アプリが立ち上がらない」とは、具体的にどうなりますか? (画面が真っ白なら、ビューを何も配置してないためでは。)
mayo1983

2022/09/28 07:54

警告でありアプリ自体は動くとのことで、その点に注視し確認したところ、 シミュレータがホーム画面で固まっていました。 アプリが立ち上がらなかった訳ではなく、シミュレータが動いていなかったようです。 ※「アプリが立ち上がらない」状況の詳細としては、シミュレータがホーム画面から動かず、アイコンも追加されないような状態でした。 シミュレータを再起動したところ、立ち上がるようになりました。 Xcode再起動などは試したのですが、シミュレータは立ち上げっぱなしでした・・・。 初歩的なミスでお手数おかけしてしまい申し訳ないです。 警告のメッセージと関係があると思い込んでおりました。 ご助言とても助かりました。ありがとうございます。
guest

回答1

0

自己解決

シミュレータがホーム画面から動かず、アイコンも追加されないような状態で、
エラーのせいでアプリが立ち上がらないのだと勘違いしておりましたが、
実際はシミュレータが固まっていただけでした。

シミュレータの再起動で解決いたしました。
質問文中の警告メッセージは無関係でした。

投稿2022/09/28 07:57

mayo1983

総合スコア10

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問