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

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

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

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

Swift

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

Q&A

解決済

1回答

1109閲覧

UIパーツの関連付けが正常にできません[Swift]

bell96

総合スコア13

Xcode

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

Swift

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

0グッド

0クリップ

投稿2018/07/29 05:45

編集2018/07/29 14:52

前提・実現したいこと

画面遷移の勉強をしている際、二つ目の画面のUIパーツの関連付けでエラーが発生し、その解決策がわかりません。

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

イメージ説明
上記のエラーメッセージが出ました。

該当のソースコード

ソースコード

試したこと

イメージ説明
イメージ説明
エラーメッセージから、storyboardのcontrollerの名前と、関連付けを行う先のコードを書くファイル、またはその中のclass名が違っているのが問題だと思うのですが、画像の通り名前は一致しているのでエラー文がどこのことを言っているのかわからない状態です。

[追記]
イメージ説明
試しに他の.swiftファイルで関連付けをしたところ、ListViewController.swiftにはドロップすらできない一方で、Item.swiftには関連付けが成功してしまいました。このファイルは二番目に作った.swiftファイルであるのに対し関連付けを行いたいパーツが乗っているviewControllerも(navigationControllerを除けば)二番目に作ったviewControllerだったのでそれが関係しているのかと思いました。

何回もやり直して書籍に書いてある通りに実行しているつもりなのですがどうもうまくいかず困り果てています。

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

右も左もわからない初心者で質問内容自体がわかりにくいかと思います。お手数おかけしてすみません。

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

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

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

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

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

xAxis

2018/07/29 09:47

DetailViewController.swiftのファイル名、クラス名、またMain.storyboard(だと思うのですが)上の該当するDetailViewContorllerのCustomClass欄の名前などを書き換えたりしたことはありませんか?
bell96

2018/07/29 14:41

はい、はじめに作成した時以外はいじっていません。あれから少し試してみて進展があったので質問本文の方を編集いたしますのでお時間ありましたらそちらの方の確認をしていただけると幸いです。
xAxis

2018/07/30 02:15

上記のお返事了解しました。一応念のため画像と質問内容から近しい構成をこちらでも用意してみたのですが問題なくoutlet接続出来ますね。 >ListViewController.swiftにはドロップすらできない これはMain.storyboard上にあるDetailViewControllerのCustomClassがListViewControllerクラスではないからですね。 同じくMain.storyboard上のDetailViewControllerのCustomClassがなんらかの原因でDetailViewControllerクラスとして認識されていないのがきっと問題だと思われます。とりあえず簡単な手段としてDetailViewControllerのCustom Classを一旦消去してenterしたのちに書き直したり、左上のProductをクリック、optionキーを押したままClean Build Folderをしてみたりと試してみてください。これでも直らないようでしたら、コードを書き始めたばかりのようですし一番手っ取り早くDetailViewController.swiftのファイルをプロジェクトファイルから消して再度DetailViewController.swiftを用意、Main.storyboard上のDetailViewControllerのCustomClassを一旦消去してenterキーを押し、その後再度CustomClass欄をDetailViewControllerと書き直してみてください。DetailViewController.swiftを右クリックしてdeleteを押すとどうやって消すか聞かれるのでmove to trashにすればゴミ箱に突っ込めます。もし上手くいかなかったらまた教えてください。
xAxis

2018/07/30 02:16

長すぎですね。読むのに苦労されるかもしれないですが申し訳ないです。
bell96

2018/07/30 13:24

返信が遅れてしまい申し訳ありません。Macを再起動してもう一度試したらうまくいきました。xAxis様のご指摘の通り、DetailViewControllerクラスがDetailViewControllerとして認識されていないことが問題だったと思うのですが、結局問題の特定ができないままなんとかなってしまった感がありモヤモヤしています。丁寧に対応していただきありがとうございました。再度同じような問題に遭遇した時に今回寄せていただいた回答を参考にしたいと思います。
guest

回答1

0

自己解決

コードを変えずMacを再起動したら問題なくOutlet接続出来ました。お騒がせしました。

投稿2018/07/30 13:28

bell96

総合スコア13

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

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

xAxis

2018/07/30 14:21

よかったですね。無事解決して何よりです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問