Film şeridinde koleksiyon görünümü var. Hikaye panosundaki ve program aracılığıyla oluşturduğum hücrelerin bir kısmında hücrelerim var. sizeForItemAtIndexPath
yönteminde ne yapmalıyım? Hangi değeri iade etmeliyim? Programlı olarak oluşturulmuş hücrelerim için onun için boyut döndürüyorum. Ancak, hikaye tahtasından hücreler için film şeridinden kopya boyutunu istemiyorum.Film şeridinden ve program aracılığıyla oluşturulan hücrelerden hücreleri karıştırma
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
return self.viewModels[indexPath.item].viewSize // for programmatically created cells
}
Ve ViewModel sınıfında: Yani, var Ayrıca
class ViewModel {
var viewSize:CGSize = CGSizeMake(50, 50)//for example
}
, ben film şeridindeki setted bunun storyboard ve büyüklüğüne hücreleri var. Örneğin, storyboard'da 5 farklı hücreye sahibim ve her birinin farklı boyutu var. Yapmalı mıyım ?
let viewModel = self.viewModels[indexPath.item]
if viewModel.id == "CELL_1" { return CGSizeMake(10, 10) }
else if viewModel.id == "CELL_2" { return CGSizeMake(20, 20) }
//and so on
bu ben Storyboard'dan öğenin boyutunu almak ya bu yöntem uygulanmadı zaman davranışını nasıl oluşturabileceğini çözümü biliyor musunuz :(yapmak istemiyor musunuz? (Aksi Yani eğer daha sonra toplama görünümü bunu yeniden kimliği kullanarak hücreyi örneğini ve çağırabilir
Nasıl hücre almalıyım sizeForItemAtPath? Eğer collectionView.deque ile hücre almayı denersem ... oIdentifier ile –
görüyorum, belki hücrelerinizi prototip hücrelerden ayrı NIB dosyalarına taşıyabilir ve manuel olarak yükleyebilirsiniz. – paulvs
tableView/collectionView ile çalışmak için kitaplık oluşturuyorum. Ve nasıl kullanacağını bilmiyorum, şanssız –