web-dev-qa-db-ja.com

起動画面でカスタムクラス名が設定されないことがある

テーブルビューセルにカスタムクラスを追加しようとしましたが、追加した後、次のエラーが表示されます。

enter image description here

LaunchScreenでカスタムクラスを使用できないことをよく読みますが、このファイルには触れていません。誰も私を助けることができますか?

enter image description here

これは、メインおよび起動インターフェイスの一般的な設定です。

私はSwiftを使用しています。

38
Genfood

Main.storyboardのプロパティに移動し、Use as Launch Screenが選択されていないことを確認します。誤って選択したようです。

enter image description here

85
Paulw11

私は常に最初のView Controllerアプリがロードされる別のスプラッシュ画面を持っています。 Splash Screen Storyboard

これは、すべてのビジネス論理または表示スピナー/ローダーなどを追加するファイルです。

これを機能させるには、図のようにプロジェクトの配置ターゲットを設定する必要があります。 Target Deployment info

LaunchScreenには他のカスタムクラスを追加できないことに注意してください。アプリが起動しようとしている間に表示するのはViewControllerです。アプリのライフサイクルのこの段階では、まだ何も開始されていません。静的画像にほぼ似ています(以前はiOS7まで静的画像のみでした)。 iOS9またはXCode 7のみで、以前はXIBファイルであったストーリーボードに変更されました。したがって、カスタムクラスオブジェクトをLaunchScreenに追加することはできません。これは、アプリがまだロードまたは起動されるフェーズであるためです。

6
Bishal Ghimire

Yashのコメントに追加すると、このエラーは誤解を招きます。 ViewControllerの[カスタムクラス]フィールドが空の場合は、ビュー上のすべてのオブジェクトも確認し、カスタムクラスも空であるかどうかを確認する必要があります。起動ページにカスタムラベルを設定することもできません。

これが私を理解し、理解するのに時間がかかり、ラベルの1つにカスタムクラスをカット+ペーストで誤って設定してしまったことです。

3
William T.

私も同じ間違いを犯しました。

違う:

enter image description here


あなたが意図したことがそうだった可能性が非常に高い:

正しい:

enter image description here

1
Honey

-> launchScreen.storyboardに移動してから、-> identity and types->ボックスをオフにします->起動画面として使用します。 [全般]-> [アプリアイコン]および[起動画像]-> [画面ファイルの起動]ドロップダウン-> launchScreen.storyboardの代わりにLaunchScreenを変更しても、上記の操作はできません(停止)。メインストーリーボードから制約設定をコピーするだけで、すべての制約がより簡単に適切に設定されることを確認してください。

0
makhiye