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

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

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

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

Swift

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

Q&A

解決済

1回答

795閲覧

起動時のStoryBoardを変更したら画面がブラックアウト&エラー「[Storyboard] Unknown …in Interface Builder file.」

Risney

総合スコア148

Xcode

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

Swift

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

0グッド

0クリップ

投稿2020/08/26 03:29

編集2020/08/26 03:37

前提・実現したいこと

・起動時のStoryBoardを変更したい
「Main.StoryBoard」とは別に作成した「Weather.StoryBoard」に変更したい

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

######error1
「Main.StoryBoard」のエントリーポイント「is Initial View Controller」を外し
「Weather.StoryBoard」にエントリーポイントを付けると、
ビルド時に画面がブラックアウトします
イメージ説明
※MainにエントリーポイントをつけるとMain.storyboardが表示されます。

######error2
エントリーポイントをどちらにつけたにせよ、以下のエラーは表示されます。

error2

1CarthageAlamofireWeather[78859:4609550] [Storyboard] Unknown class _TtC24CarthageAlamofireWeather14ViewController in Interface Builder file. 2

######error3
error1の対応に加え、
PlistでStoryboard Nameを「Main」から「Weather」に変更すると以下のエラー
イメージ説明

error3

1Thread 1: Exception: "[<UIViewController 0x7feaebf7f7c0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key table."

該当のソースコード

ソースコードの問題じゃない気がしますが念の為のせておきます。

Viewcontroller

1import UIKit 2import Alamofire 3import Foundation 4import RealmSwift 5 6protocol ViewDelegate: class { 7 func updateAPI(weatherLists : [DbTable]) 8} 9 10class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate, ViewDelegate { 11 12 var weatherApiModel = WeatherApiModel() 13 var weatherListsResult: [DbTable]? 14 @IBOutlet weak var table:UITableView! 15 16 override func viewDidLoad() { 17 super.viewDidLoad() 18 19 receiveEvent() 20 21 } 22 23 func receiveEvent() { 24 weatherApiModel.delegate = self 25 weatherApiModel.weatherApi() 26 } 27 28 func updateAPI(weatherLists : [DbTable]) { 29 weatherListsResult = weatherLists 30 self.table.reloadData() 31 } 32 33 //Table Viewセル数指定 34 func tableView(_ table: UITableView, 35 numberOfRowsInSection section: Int) -> Int { 36 guard let weatherListCount = weatherListsResult?.count else { return 0 } 37 return weatherListCount 38 } 39 40 //各セル要素設定 41 func tableView(_ table: UITableView, 42 cellForRowAt indexPath: IndexPath) -> UITableViewCell { 43 44 guard let cell = table.dequeueReusableCell(withIdentifier: "tableCell", for: indexPath) as? TableViewCell else {fatalError("cell error")} 45 guard let date = weatherListsResult?[indexPath.row].date, 46 let telop = weatherListsResult?[indexPath.row].telop else {fatalError("error")} 47 48 cell.dateLabel.text = date 49 cell.telopLabel.text = telop 50 51 guard let iconUrl = weatherListsResult?[indexPath.row].iconUrl else {fatalError("error")} 52 guard let url = URL(string: iconUrl) else {fatalError("error")} 53 if let iconData = try?Data(contentsOf: url) { 54 cell.iconImageView?.image = UIImage(data: iconData) 55 } 56 57 return cell 58 } 59}

Weather.storybordのクラス設定
イメージ説明

試したこと

General>Development Info>Main Interfaceのドロップダウンで追加したStoryboardを選択する
イメージ説明

・Main.StoryBoardを参照削除
Mainが表示されるなら消してしまったどうかと思って削除したら以下のエラー文が表示されたので、一旦もどしました…

error3

1"Could not find a storyboard named 'Main' in bundle NSBundle

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

・version
MacOS:Catalina 10.15.5
Xcode:11.6

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

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

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

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

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

guest

回答1

0

自己解決

StoryBoardをイチから作成しなおしたらエラーは解消しました。
これが根本の原因は調査中ですが、一旦質問を閉じます。

ありがとうございました。

投稿2020/08/28 01:29

Risney

総合スコア148

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問