Ada dua jenis sel tampilan tabel yang disediakan untuk Anda melalui storyboard, yaitu Dynamic Prototypes dan Static Cells
1. Prototipe Dinamis
Dari namanya, jenis sel ini dihasilkan secara dinamis. Mereka dikendalikan melalui kode Anda, bukan storyboard. Dengan bantuan delegasi tampilan tabel dan sumber data, Anda dapat menentukan jumlah sel, ketinggian sel, prototipe sel secara terprogram.
Saat Anda menyeret sel ke tampilan tabel Anda, Anda mendeklarasikan prototipe sel. Anda kemudian dapat membuat jumlah sel apa pun berdasarkan prototipe ini dan menambahkannya ke tampilan tabel melalui cellForRow
metode, secara terprogram. Keuntungan dari ini adalah bahwa Anda hanya perlu mendefinisikan 1 prototipe alih-alih membuat masing-masing dan setiap sel dengan semua tampilan ditambahkan kepada mereka sendiri (Lihat sel statis).
Jadi dalam hal ini, Anda tidak dapat menghubungkan elemen UI pada prototipe sel ke pengontrol tampilan Anda. Anda hanya akan memulai satu objek pengontrol tampilan, tetapi Anda mungkin memiliki banyak objek sel yang diinisiasi dan ditambahkan ke tampilan tabel Anda. Tidak masuk akal untuk menyambungkan prototipe sel ke pengontrol tampilan karena Anda tidak dapat mengontrol banyak sel dengan satu koneksi pengontrol tampilan. Dan Anda akan mendapatkan kesalahan jika melakukannya.
Untuk memperbaiki masalah ini, Anda perlu menghubungkan label prototipe Anda ke UITableViewCell
objek. A UITableViewCell
juga merupakan prototipe sel dan Anda dapat menginisiasi objek sel sebanyak yang Anda inginkan, masing-masingnya kemudian dihubungkan ke tampilan yang dihasilkan dari prototipe sel tabel storyboard Anda.
Terakhir, dalam cellForRow
metode Anda , buat sel khusus dari UITableViewCell
kelas, dan lakukan hal-hal menyenangkan dengan label
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "yourCellIdentifier") as! YourCell
cell.label.text = "it works!"
return cell
}
2. Sel Statis
Di sisi lain, sel statis memang dikonfigurasi melalui storyboard. Anda harus menyeret elemen UI ke setiap sel untuk membuatnya. Anda akan mengendalikan nomor sel, ketinggian, dll dari storyboard. Dalam hal ini, Anda akan melihat tampilan tabel yang persis sama dari ponsel Anda dibandingkan dengan apa yang Anda buat dari storyboard. Sel-sel statis lebih sering digunakan untuk pengaturan halaman, yang sel-selnya tidak banyak berubah.
Untuk mengontrol elemen UI untuk sel statis, Anda memang perlu menghubungkannya langsung ke pengontrol tampilan Anda, dan mengaturnya.