[解決済み] クラス 'ViewController' は swift で初期化されません。
2022-07-28 11:44:12
質問
このような操作をすると、コンパイラから苦情が来る。
class ViewController: UIViewController {
var delegate : AppDelegate
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
//self.appDelegate = UIApplication.sharedApplication().delegate;
}
@IBAction func getData(sender : AnyObject) {
}
@IBAction func LogOut(sender : AnyObject) {
}
}
しかし、単に ? の末尾に AppDelegate を以下のように変更すると、エラーは解消されます。
class ViewController: UIViewController {
var delegate : AppDelegate?
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
//self.appDelegate = UIApplication.sharedApplication().delegate;
}
@IBAction func getData(sender : AnyObject) {
}
@IBAction func LogOut(sender : AnyObject) {
}
}
には
optional
のキーワードは、私が間違っていない限り、このエラーに関連しています。
どのように解決するのですか?
エラーは改善されましたが、最初のバージョンの問題は、メンバー変数を持っていることです。
delegate
があり、それがデフォルト値を持っていないことです。Swiftのすべての変数は常に値を持っている必要があります。つまり、あなたが持っていないイニシャライザーでそれを設定する必要があるか、インラインでデフォルト値を提供することができます。
オプションにすると、それを許容するのは
nil
になるようにし、明示的に値を与えたり初期化したりする必要がなくなります。
関連
-
Swiftがエラーを報告。アボートトラップ:6
-
Swift Error fatal error: Optional value のアンラップ中に予期せず nil を発見した。
-
swift 4.0でのdispatch_async,dispatch_afterの使用について
-
[解決済み] SwiftからObjective-Cのコードを呼び出すにはどうしたらいいですか?
-
[解決済み] Swiftで#pragmaマーク?
-
[解決済み] Swift Betaのパフォーマンス:配列のソート
-
[解決済み] Swiftダブルからストリング
-
[解決済み] Swift 3でカスタム通知を作成するには?
-
[解決済み] Swiftで範囲を作成する方法は?
-
[解決済み] swiftにおける "precondition "と "assert "の違いとは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Swiftがエラーを報告。アボートトラップ:6
-
Swift Error fatal error: Optional value のアンラップ中に予期せず nil を発見した。
-
Swift の Optional 値 && Optional のアンラップ時に予期せず nil が検出された場合の説明
-
swift 4.0でのdispatch_async,dispatch_afterの使用について
-
[解決済み] Swiftで1つのビューコントローラの向きを縦向きのみに固定する方法
-
[解決済み] Swiftダブルからストリング
-
[解決済み] Swift 3でカスタム通知を作成するには?
-
[解決済み] swiftで改行なしの印刷をする
-
[解決済み] Swift: PREPROCESSORフラグ(`#if DEBUG`など)を使ってAPIキーを実装する方法とは?
-
[解決済み] Swift - 複数条件でオブジェクトの配列を並べ替える