Xcode6
telah menghapus Empty Application
templat saat membuat proyek baru. Bagaimana kita bisa membuat aplikasi kosong (tanpa Storyboard) di dalam Xcode6
dan di atas, seperti di versi sebelumnya?
ios
xcode
storyboard
xcode6
Akhil KC
sumber
sumber
Jawaban:
Tidak ada opsi di dalam
XCode6
dan di atas versi untuk secara langsung membuat Aplikasi Kosong seperti padaXCode5
dan sebelumnya. Tetapi kita masih bisa membuat aplikasi tanpaStoryboard
mengikuti langkah-langkah ini:Single View Application
.Main.storyboard
danLaunchScreen.xib
(pilih, klik kanan, dan pilih untuk menghapusnya dari proyek, atau menghapusnya sepenuhnya).Info.plist
file.Swift 3 ke atas:
Swift 2.x:
Tujuan-C:
sumber
LaunchScreen.xib
danInfo.plist
entri yang sesuai . Tanpa itu, aplikasi tidak akan mengambil seluruh ukuran layar pada iPhone yang lebih besar, yang jelek.Pendekatan sederhana akan menyalin
XCode 5
'sEmpty Application
template untukXCode
' s template direktori.Anda dapat men-download
XCode 5
'sEmpty Application
template dari sini , kemudian unzip dan copy ke/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/Project Templates/iOS/Application
direktori.PS pendekatan ini bekerja dengan cepat juga!
Sunting
Seperti yang disarankan oleh @harrisg dalam komentar di bawah, Anda dapat menempatkan templat yang disebutkan di atas dalam
~/Library/Developer/Xcode/Templates/Project Templates/iOS/Application/
folder sehingga mungkin tersedia bahkan jika Xcode diperbarui.Dan jika tidak ada direktori seperti itu, maka Anda mungkin harus membuat struktur direktori ini:
Templates/Project Templates/iOS/Application/
di~/Library/Developer/Xcode/
Dengan menggunakan pendekatan sederhana ini saya dapat membuat
Empty Application
inXCode 6
. (Cuplikan layar terlampir di bawah)Semoga ini membantu!
sumber
Ada beberapa langkah lagi yang perlu Anda lakukan:
Jadi di sini adalah tutorial lengkap:
tambahkan file "[nama aplikasi] -Prefix.pch" ke file pendukung dengan konten:
tambahkan "$ SRCROOT / $ PROJECT_NAME / [nama file pch]" ke pengaturan proyek -> Pengaturan Bangun -> Apple LLVM 6.0 - Bahasa -> "Prefix Header"
menerapkan
application:didFinishLaunchingWithOptions:
metode:sumber
Jawaban Akhils sepenuhnya benar. Bagi kita yang menggunakan Swift, akan seperti ini:
sumber
Xcode 9.3.1 dan Swift 4
Setelah itu langkah-langkah pergi ke AppDelegate.swift dan dalam fungsi didFinishLaunchingWithOptions tulis selanjutnya:
Xcode 11.2.1 dan Swift 5
Setelah itu langkah-langkah pergi ke SceneDelegate dan dalam adegan fungsi tulis berikutnya:
sumber
Ada satu langkah lagi yang perlu Anda lakukan:
1) menghapus nama dasar file storyboard utama dalam file plist
sumber
Pembaruan: Swift 5 dan iOS 13:
SceneDelegate.swift
dan ubahfunc scene
dari:untuk
sumber
Saya memiliki templat Aplikasi Kosong asli yang digunakan dalam versi Xcode sebelum Xcode 6. Saya telah mengunggahnya di sini .
Anda dapat mengunduhnya dan menempelkannya di direktori template Xcode secara manual atau menginstalnya menggunakan manajer paket untuk Xcode, Alcatraz . Cukup cari Aplikasi Kosong Xcode .
sumber
Hapus file Main.storyboard
Ini bisa dengan mudah dihapus.
Perbarui file ProjectName-Info.plist
Hapus
Main storyboard base file name
kuncinya.Buat file nib dan tautan ke pengontrol tampilan proyek
1.Buat file nib (File -> New -> File -> View)
2. Perbarui
File's Owner's
kelas untuk apa pun yang disebut pengontrol tampilan proyek3.Link
File's Owner's
view
outlet keview
objek dalam file nibPerbarui delegasi aplikasi
1. Impor file header pengontrol tampilan proyek
2. Perbarui
:didFinishLaunchingWithOptions:
metode aplikasi :sumber
Untuk
Xcode 8
danSwift 3
. Hapus saja.storyboard
file itu, maka secara otomatis akan menghapus referensi yang sesuai dari Anda.plist
dan diAppDelegate.swift
tambahkan kode berikut.Anda dapat menulis ViewCountroller kustom Anda sendiri dan menggunakannya
AppDelegate.swift
sebagai milik Andaself.window?.rootViewController
, cukup ganti UIViewController dengan ViewController Anda sendiri dalam kode di atas.sumber
Saya menggunakan XCode6 Beta & Saya mencari solusi lain untuk masalah ini dengan menambahkan template kosong dari XCode5.xx ke XCode6 Beta.
Untuk klik kanan ini pada XCode5.xx di Aplikasi klik 'Tampilkan Konten Paket' dan salin 'Empty Application.xctemplate' dari jalur yang diberikan
Isi / Pengembang / Platform / iPhoneOS.platform / Pengembang / Perpustakaan / Xcode / Templat / Proyek Templat / Aplikasi
Sekarang keluar dari Window & buka jalur yang diberikan untuk XCode6
Isi / Pengembang / Platform / iPhoneOS.platform / Pengembang / Perpustakaan / Xcode / Templat / Proyek Templat / iOS / Aplikasi /
Tempel 'Empty Application.xctemplate' di dalam folder Aplikasi. Sekarang restart XCode6 dengan berhenti & membuat proyek baru. Anda akan mendapatkan opsi 'Aplikasi Kosong'.
Sekarang ketika saya membuat proyek Kosong baru, file .pch secara otomatis ditambahkan dalam proyek (Yang harus kita tambahkan secara manual di XCode6)
Semoga ini berhasil
sumber
Ya, Atau cukup gunakan salah satu Beta sebelumnya untuk membuatnya, dan lanjutkan ke versi terbaru setelahnya.
sumber
Anda dapat membuat template proyek Anda sendiri untuk Xcode. Untuk permintaan Anda, Anda dapat menggunakan templat di situs ini:
https://github.com/elprup/xcode7-project-template
sumber
Yang lain sudah menjelaskan bagaimana cara menghilangkan storyboard, jadi saya akan melewatkan yang itu di sini. Ini adalah bagaimana saya lebih suka melakukannya dalam kode saya dengan chaining yang kurang opsional (ditulis dalam Swift 3.1):
sumber
perbarui Xcode 11 dan ios 13. Setelah Anda mengatur semuanya tetapi masih melihat layar hitam, itu karena siklus hidup ditangani oleh UISceneDelegate dan ketika Anda membuat proyek baru, itu akan secara otomatis menghasilkan UISceneDelegate.m dan UISceneDelegate.h. Untuk kembali ke masa lalu sebelum kita terbiasa dengan UISceneDelegate. langkah-langkah berikut dapat membantu:
hapus Application Scene Manifest in plist.
hapus Application Scene Manifest.h dan Application Scene Manifest.m
hapus kode di bawah tanda #pragma - siklus hidup UISceneSession di APPdelegate.m
tambahkan @property (strong, nonatomic) UIWindow * window; di APPdelegate.h
sumber