エラー
スポンサーリンク

日々遭遇するSwiftのエラーをここに記録していきます。

警告

 

Non-breaking space (U+00A0) used instead of regular space
Replace ' ' with ' '

コードをコピペした時などに起こりやすい、改行やスペース関係の警告。fixで直ることが多い。

 

Invalid character in source file
Replace '
' with ' '

コードをコピペした時などに起こりやすい。「ソースファイルの文字が無効です」。fixで直ることが多い。

 

Expression implicitly coerced from 'Data?' to 'Any'

「"データ?"から暗黙的に強制された式"すべて"へ」

  • 初期値を与える
  • 値を強制的にアンラップ
  • キャスト(as Any)

これらで解決する。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

エラー

 

Cannot assign value of type 'Int' to type 'String?'

「タイプ「Int」の値をタイプ「String?」に割り当てることはできません」型が間違っているということ。

 

Thread 1: signal SIGABRT

接続に問題がある可能性が高い。ViewContorollerをctrlクリックして警告を解決すると良い場合がある。

 

Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value

「致命的なエラー:オプション値をアンラップ中に予期せずnilが見つかりました」

「""」の中身が空の時などに出る。

 

Cannot convert value of type 'UIResponder?' to expected argument type 'String'

「"UIResponder?"の型が変換できません。予想される引数タイプ 'String'」

本来String型にしなければいけないものを「""」で囲ってない時にでる。

 

1:Expected member name or constructor call after type name
2:Add arguments after the type to construct a value of the type  [fix] 3:Use '.self' to reference the type object  [fix]

1:「型名(type name)の後に予期されるのは、メンバー名またはコンストラクター呼び出し」

2:「型(type)の後に引数(arguments)を追加して、型の値を構築してください。」 [fix]

3:「".self"を使用して型オブジェクトを参照してください」[fix]

どちらの[fix]でもダメだったが、

これで解決した。

 

1:Incorrect argument label in call (have 'idoValue:keidoValue:', expected 'idoValue:keidValue:')
2:Replace 'keidoValue' with 'keidValue'  [fix]

1:「呼び出しの引数ラベルが正しくないです(idoValue:keidoValue:が呼ばれているが、メソッドで宣言されているidoValue:keidValue:が必要)」

2:「"keidoValue"を"keidValue"に置き換えてください。」[fix]

 

[fix]でも直らなかった。なぜならメソッドで宣言した「keidValue」ミスで、正しくは「keidoValue」だから。
これで解決した。

 

Cannot assign value of type 'ViewController' to type 'SearchLocationDelegate?.Type'

「"ViewController"型の値を"SearchLocationDelegate?"型の値に割り当てることができません」

コード変えてないのに何故か直った。NextViewControllerを修正したからかも。

 

Type 'ViewController' does not conform to protocol 'NowScoreDelegate'
Do you want to add protocol stubs?

「タイプ"ViewController"はプロトコル"NowScoreDelegate"に準拠していません」
「プロトコルスタブを追加しますか?」

プロトコルの必須メソッドがない場合に出るエラーだが、既にあるのに表示された。

 

 

Redundant conformance of 'ViewController' to protocol 'LoginButtonDelegate'

「プロトコル"LoginButtonDelegate"への"ViewController"の余分な準拠」

 

Argument passed to call that takes no arguments

「引数を持たない関数/メソッドに引数が渡されました」

・引数名のスペルミスの場合が多い
・自作プロトコルのメソッドの引数の()内に引数を記載忘れ

 

 

Value of type 'UIImageView?' has no member 'delegate'

「'UIImageView?'は'delegate'というメンバーを持っていません」

紆余曲折あったが、imageViewとtableViewを配置し間違えていた。

 

 

Use of unresolved identifier 'XXX'

「未解決の識別子XXXの使用」

宣言していない変数等を記入しているために出るエラー。コンパイラが判断出来ない何か('XXX')が書かれている

クラスのスコープの外で定義している場合もある

 

Class '〜' has no initializers

メンバー定数を変数に変えると直る事もある。

 

 

デバックエリアのエラー

シュミレーター操作中に出てくるやつ。

 

Receiver () has no segue with identifier 'next'

「レシーバー()には識別子 'next'のセグエがありません」

segueを選択→attributes inspector→Identifierに 'next'を指定して解決!

 

Fatal error: Unexpectedly found nil while unwrapping an Optional value

「致命的エラー:オプション値のアンラップ中に予期せずnilが見つかりました」

・引数の綴りミス

 

Attempt to insert non-property list object

非プロパティリストオブジェクトを挿入しようとしました

UserDefaults.standard.set(userNameTextField.text, forKey: "userName")

.textが抜けていた。

 

Unknown class XXX in Interface Builder file.

対象のViewControllerのモジュールが「None」になっていた。identity inspectorで確認できる。

 

[I-ACS036002] Analytics screen reporting is enabled.
[I-ACS036002]分析画面レポートが有効になっています。

Call +[FIRAnalytics setScreenName:setScreenClass:] to set the screen name or override the default screen class name.
→+ [FIRAnalytics setScreenName:setScreenClass:]を呼び出して、スクリーン名を設定するか、デフォルトのスクリーンクラス名をオーバーライドします。

To disable screen reporting, set the flag FirebaseScreenReportingEnabled to NO (boolean) in the Info.plist
→画面レポートを無効にするには、Info.plistでFirebaseScreenReportingEnabledフラグをNO(ブール値)に設定します

ブレークポイントをデリートしたらこのエラーは出なくなったが、ブレークポイントつけた自覚はない。

 

reason: 'Failed to get FirebaseApp instance. Please call FirebaseApp.configure() before using Firestore'

理由: 'FirebaseAppインスタンスの取得に失敗しました。 Firestoreを使用する前にFirebaseApp.configure()を呼び出してください」

FIRApp.configure()が呼ばれる前にFirestoreを使おうとしてる可能性があるらしい。

 

実行時エラー

EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)

firebaseからデータを取得するコードで出現。そのキー値で保存された値がなかった。

 

 

 

 

Swift(iOS)が学べるオンラインスクール ランキング
CodeCamp
CodeCamp
7〜24時まで授業可能で働きながらでも学べる!!
料金
講師の質
コースの種類
転職サポート
ポイント1エンジニア経験2年以上のベテラン講師によるオンライン授業
講師は全員が現役のエンジニアで、他のスクールによく見られるアルバイト講師ではありません。マンツーマン指導で自分のレベルにあったカリキュラムが組め、満足度も高いです。また、自社開発企業への転職指導にも定評があります。

ポイント2無料レッスン体験&無料受講相談で事前に話が聞ける
事前にレッスンを体験して授業の雰囲気や学習ペースを確認できます。またエンジニア転職を目指す方にはどのコースが向いているかなどが聞けるカウンセリング(受講相談)も無料。エンジニアの生の声が聞けるので自分が働き出した時のことをイメージできます。

TechAcademy

授業型ではなく自習型なので自分のペースで学べる
料金
講師の質
コースの種類
転職サポート
ポイント1自習スタイルでチャット質問は何回でも無料
自分の分からないところを質問するスタイルなのでわかるところはサクッと、わからないところはじっくりと、無駄なく学べます。チャットの質問が無料なので、料金を気にせず何回でも聞けます。また、メンターがつくのでカウンセリングで学習の進捗やモチベーションの管理もしてくれます。
ポイント21週間の無料体験と無料カウンセリング、安心の返金制度も
無料体験の期間は1週間もあり、納得してから契約できるので安心です。事前の無料カウンセリングでは、その人にあったアドバイス等をもらうことができるので気軽に活用しよう。転職保障コースの場合、転職できなかったら全額返金!!
侍エンジニア塾
プログラミングスクールの老舗NO.1
料金
講師の質
コースの種類
転職サポート
ポイント1歴史があるからノウハウも豊富
日本で初めてオンラインのマンツーマンレッスン指導を導入した実績十分のスクール。講師も現役エンジニアでメンタリングもあるため転職のサポートも手厚く、面接対策や自己PRのフィードバックまで対応してくれます。

ポイント2転職成功率94.1%、挫折率8%
コースによっては転職成功で受講料が0円に!!  絶対にエンジニアになりたいという意思があれば超低額で転職できます。事前の無料体験で相談も可能なため、まずは話だけ聞いてみるのもあり。

おすすめの記事