Mulai project iOS di Xcode 11 dengan XIB
Mulai project iOS di Xcode 11 dengan XIB
Photo by Yura Fresh on Unsplash
Buka Xcode 11 anda.

Pilih Create a new Xcode project
Kemudian kita pilih Create a new Xcode project

Pilih Single View App, klik Next

- Pilih Team, jika Anda sudah mempunyainya. Team ini berupa Account Apple Developer, Anda harus mendaftar terlebih dahulu untuk mendapatkan account ini. Akan ada tarif untuk membership. Silakan kunjungi http://developer.apple.com/
- Pilih bahasa yang akan kita gunakan. Disini kita akan menggunakan Swift
- Pilih UI untuk apps kita. Pada iOS app, terdapat 3 tipe UI yang bisa kita pakai untuk men-develop app. Yang pertama ada Storyboard, XML Interface Builder (XIB), dan yang terbaru di Xcode 11 ini ada SwiftUI. Penjelasan lebih kita bahas nanti ya.
Karena kita akan pakai XIB dan XIB itu tidak ada di dropdown, maka kita pilih Storyboard. XIB akan kita buat manual nanti ketika project kita sudah selesai dibuat.

4. Kemudian isi nama apps kita
5. Klik Next

Kemudian kita diminta untuk menaruh file-file project di dalam folder. Karena kita belum mempunyai folder project, maka kita harus membuat folder nya terlebih dahulu. Klik New Folder.

Ketikan nama folder project kita dan klik Create

Klik Create, dan project kita di proses oleh Xcode.

Setelah selesai, maka tampilan Xcode kita akan seperti ini, di dalam kotak merah terdapat folder, disana lah kita akan membuat script code kita nanti nya.
Saya jelaskan sedikit file-file yang terdapat di dalam folder kerja kita. Seperti pada Xcode versi sebelumnya, hanya saja di Xcode 11 ini muncul file baru yaitu SceneDelegate.swift.
Jadi ketika kita run app, app kita akan membaca script AppDelegate.swift, biasanya setelah AppDelegate.swift dilanjutkan ke Storyboard atau file XIB kita. Nah, untuk versi yang terbaru ini AppDelegate akan menjalankan SceneDelegate.swift dahulu, baru setelah itu menjalan Storyboard atau XIB kita.
OK lanjut, sekarang kita akan membuat halaman sebagai root page di app kita.
Karena default dari Xcode itu Storyboard, dan kita akan menggunakan XIB sebagai UI nya, maka untuk membuat XIB kita harus menambahkan nya secara manual.

Klik kanan pada folder project kita, kemudian pilih New File…

Pilih View dan klik Next

Ketik nama file XIB kita, disini saya menamakannya HomeViewController.xib
Klik Create

XIB berhasil kita buat
Sekarang kita buat class/controller untuk XIB kita. Klik kanan pada folder project kita dan pilih New File…

Pilih Swift File dan klik Next

Ketikan nama file kita, untuk mempermudah samakan dengan file XIB nya. Kemudian klik Create

File swift berhasil dibuat
Selanjutnya kita buat class HomeViewController seperti berikut

Selanjutnya kita akan sambungkan atau connect file .swift dengan .xib yang sudah kita buat tadi.

- Kita ke file HomeViewController.xib
- Pilih File’s Owner
- Pilih icon identity inspector di kanan atas
- Ketik nama class nya (nama file .swift dan nama class harus disamakan)

Kemudian kita buat Label di screen kita nanti.
Klik tombol “+” di pojok kanan atas. Kemudian pilih Label, selanjutnya kita drag and drop di screen kita. Taruh Label di tengah-tengah screen kita.

- Pilih icon Attributes inspector di pojok kanan atas
- Ubah teks “Label” menjadi “HOME”
OK, sampai disini kita sudah membuat halaman atau page sebagai root app kita.
So, muncul pertanyaan bagaimana kita akan set rootViewController nya?
Jika kita mencoba set rootViewController nya di dalam AppDelegate.swift
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { let home = HomeViewController()
let navigation = UINavigationController(rootViewController: home)
let frame = UIScreen.main.bounds window = UIWindow(frame: frame)
window!.rootViewController = navigation window!.makeKeyAndVisible() return true }
Kita coba run app nya. Maka function kita tidak akan bekerja.
Kalau Anda sebelumnya biasa melakukan seperti ini, untuk di Xcode 11 yang sudah ada SceneDelegate maka code yang kita ketik seperti diatas tidak akan bekerja. Karena AppDelegate langsung menjalankan scene, dimana scene itu ada di SceneDelegate.
Jadi, kita akan coba set rootViewController di SceneDelegate.
Ketikan code di atas pada SceneDelegate kita. Dan coba kita Run.

Dan Yupz, kita sudah berhasil membuat project dan set rootViewController nya.