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

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

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

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

Q&A

解決済

2回答

1036閲覧

swift 画面遷移 遷移先に何も表示されない

globalplus

総合スコア119

Swift

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

0グッド

0クリップ

投稿2018/09/19 07:00

swiftで画面遷移をしています。画面遷移自体は何度かやった事があるのでいつもと同じようにやってみたら

遷移先のviewcontrollerが真っ白で何も表示されません。 お分かりになる方教えて頂けたら嬉しいです。よろしくお願いします。

ViewController

1import UIKit 2 3class ViewController: UIViewController { 4 5 @IBAction func edit(_ sender: UIBarButtonItem) 6 { 7 editcall() 8 } 9 func editcall() 10 { 11 let storyboard = self.storyboard! 12 let nextView = storyboard.instantiateViewController(withIdentifier: "edit") 13 self.present(nextView, animated: true, completion: nil) 14 } 15 16 17 override func viewDidLoad() { 18 super.viewDidLoad() 19 // Do any additional setup after loading the view, typically from a nib. 20 } 21 22 override func didReceiveMemoryWarning() { 23 super.didReceiveMemoryWarning() 24 // Dispose of any resources that can be recreated. 25 } 26}

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

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

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

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

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

xAxis

2018/09/19 07:04

まず基本的な確認ですが遷移先のViewControllerは遷移先であるということが明らかに分かるようになっていますか(例えば背景色を設定してあるとか)?また遷移先のViewControllerにはstoryboardIDやCustomClassの設定は問題なく行われていますか?
globalplus

2018/09/19 07:09

お返事ありがとうございます。すみませんViewControllerは遷移元です。遷移先のViewControllerにはsegue(identifier)で特定しています。ClassのViewControllerの名前も設定してあります。storyboardIDは空欄になっています。そこには何を入れるべきですか?(identifierを入れる?)
fuzzball

2018/09/19 07:43

遷移先のlabelやbuttonはStoryboard上に配置しているのでしょうか?また、Storyboard上に2つのViewController以外のViewControllerはあるでしょうか?
globalplus

2018/09/19 07:51

ちゃんと上に配置しています。はい。その他にもViewController(何もない)があります。もしかしてこれが呼び出されてしまっているのでしょうか?
globalplus

2018/09/19 07:56

その、他のViewControllerを消して、接続も解除し、実行して見ましたが、変わりませんでした
fuzzball

2018/09/19 08:14

遷移先ViewControllerのviewの背景色を変えてみて下さい。(本当にそのViewControllerに遷移しているかどうか確認のため)
globalplus

2018/09/19 08:44

色変わりました。(赤にしました)。ただ色を戻すと白紙のままです。これは設置したUIlibraryに問題があるのでしょうか?
fuzzball

2018/09/19 08:48

左上の隅に何か配置して表示されるかどうか確認して下さい。
globalplus

2018/09/19 09:12

左端にlabelを置いてあああと入れたら表示されました。ただ、すでに置いてあるUIImageIViewやCollectionViewが表示されません。
guest

回答2

0

ベストアンサー

配置している各Viewに制約付けて下さい。

【追記】
UIImageViewには画像を登録しているでしょうか?
UICollectionViewはセルの表示を実装しているでしょうか?
どちらも配置するだけでは何も表示されません。

とりあえず表示確認したいなら、どちらも背景色を設定して下さい。

投稿2018/09/19 09:17

編集2018/09/19 10:23
fuzzball

総合スコア16731

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

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

globalplus

2018/09/19 09:50

constrainsしましたが表示されません泣。
globalplus

2018/09/19 10:25

すみません。そうでした。お手数お掛けしました。本当にありがとうございます。と同時に勘違いに謝罪します。
guest

0

コメント欄でお気付きのようにstoryboardからViewControllerを呼び出すときには

swift

1guard let nextView = storyboard.instantiateViewController(withIdentifier: "edit") as? VoluntaryViewController else { 2 fatalError() 3}//

のように呼び出します。VoluntaryViewControllerの部分は遷移先のViewControllerのクラス名を指定します。
このときに割り振ったidentifierはStoryboard上のViewControllerのstoryboardIDと同一でなければなりません。

投稿2018/09/19 07:12

編集2018/09/19 07:38
xAxis

総合スコア1349

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

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

globalplus

2018/09/19 07:19

ご回答ありがとうございます。その通りにやっても遷移先は白いままです。遷移自体はできているのですが遷移先のViewControllerに置いたlabelやbutton等のUIlibrary達が表示されないんですがこれは遷移先のViewControllerが何か間違っている可能性はありますか?
xAxis

2018/09/19 07:38

遷移先のViewControllerの間違いは無いと思います。回答を編集しましたので確認してください。
globalplus

2018/09/19 07:52

見させていただきました。有難うございます。ただ結果は同じでした。fuzzballさんからのご指摘があり、何も配置していない他のViewControllerが呼び出されてしまっているかもしれません。
xAxis

2018/09/19 08:12

うーん、じゃあshift + option + command + Kをしてみるとかどうですか?
globalplus

2018/09/19 09:14

背景の色を変えてやって見たら繋がっていることが判明しました。ですがすでに置いてあるUIlibraryは表示されないままです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問