Saya mencoba membuat aplikasi iOS baru di Xcode. Saya membuat storyboard utama dan menambahkan label pada ViewController saya. Ketika saya menjalankan aplikasi saya, pertama itu menunjukkan label dan kemudian menjadi layar hitam tanpa kesalahan.
Saya sedang mengerjakan Xcode 11 (Swift 5) dan pesan ini muncul di keluaran:
[SceneConfiguration] Konfigurasi Info.plist "Konfigurasi Default" untuk UIWindowSceneSessionRoleAplikasi berisi kunci UISceneDelegateClassName, tetapi tidak dapat memuat kelas dengan nama "gina.SceneDelegate"
Saya tidak tahu di mana kesalahan saya.
SceneDelegate
ke target saya dan mencentang kotak memperbaikinya.Jawaban:
iOS 13
SceneDelegate
tidak didukung sebelum iOS 13 . Jika Anda ingin menggunakanSceneDelegate
dan juga ingin mendukung iOS sebelum iOS 13 maka Anda harus menambahkan beberapa perubahan pada proyek Anda.SceneDelegate
metode baru . Tambahkan atribut ketersediaan ke mereka juga.UIWindow
objek di AppDelegate.swift .iOS 12 dan sebelumnya
AppDelegate
membutuhkanUIWindow
properti. iOS 13 digunakanSceneDelegate
dalam proyek-proyek baru. TentukanUIWindow
objek dan hapus file SceneDelegate.swift .Jika Anda telah menghapus
SceneDelegate
dari proyek, maka Anda harus menghapus kamus Application Scene Manifest dari Info.plist .sumber
Anda perlu menginisialisasi jendela seperti ini:
dan tambahkan ini di info.plist:
Itu semua yang perlu Anda lakukan.
sumber
$(PRODUCT_MODULE_NAME).
menyelesaikan masalah saya.