Dalam praktiknya, semua orang menggunakan UICollectionView yang saya temui, padahal mereka hanya membutuhkan UITableView. "Ini satu dimensi. Ini naik dan turun. Mengapa Anda menambahkan metode delegasi yang tidak perlu untuk tata letak AND data?". Saya pernah menghabiskan 2 jam ekstra untuk membantu startup mencari tahu mengapa UICollectionViewCell mereka tertekan karena pemiliknya, yang tidak membaca manual Animations, atau HIG, atau panduan UICollectionView, memutuskan untuk menggunakannya dan menambahkan ketinggian variabel dan anim. Tak perlu dikatakan lagi, dia membuat dirinya sendiri pusing dan banyak kehilangan waktu untuk masalah non-bisnis-kritis yang bisa dia hindari hanya dengan menggunakan sel tabel, karena tidak ada delegasi tata letak tambahan + Nib.
Biarkan saya meluruskan ini, saya mendukung UICollectionView ketika data dan tampilan Anda membutuhkannya. Mereka sangat kuat. Namun dalam praktiknya, kebanyakan orang yang pernah saya lihat telah menggunakannya dalam daftar.
Ini memunculkan kesalahan lain. Mereka juga digunakan pada daftar pendek dan konstan yang tidak akan pernah berubah. Dalam hal ini, buat saja Xib. Atau tulis tampilan ubahsuaian yang menyusunnya. Mengapa? Karena Anda tidak memerlukan manajemen memori untuk 5 set label dengan tombol atau sakelar. Jika mereka mungkin berubah, maka ya, gunakan daftar. Jika Anda menginginkan fisika, maka UICollectionView bekerja dengan baik dengan beberapa efek keren. Tetapi apakah Anda benar-benar perlu menambahkan 5 metode delegasi dan sistem tata letak untuk 5 label yang tidak akan pernah bergerak?
Juga, saya tidak lupa bahwa iOS memiliki tampilan susun asli sekarang juga. Saya tidak pernah bisa mengubah bentuknya seperti yang saya inginkan, meskipun saya cukup mahir dalam 2D dan sistem animasinya, jadi saya tidak pernah menggunakan yang built-in.
Yang saya katakan adalah, tentukan kebutuhan Anda. Mungkin Anda tidak memerlukan salah satu dari ini, jika UI Anda tidak menambah / menghapus item dan menyegarkan sendiri. Atau mungkin Anda ingin menulis Permainan Kartu dan membuangnya secara virtual di atas meja, lalu gunakan UICollectionView dengan sistem fisika untuk panduan tata letaknya.