Yani bu sorun oldukça basittir. (MyProfileHeader.swift)
numaralı bir başlık ile UICollectionViewController
(MyProfile.swift)
var. İkincisi içinde, collection view cells
(UICollectionViewController
içinde sonuncusunun sınıfının bir örneğini başlatmak istemiyorum) öğelerinin farklı öğelerini döndürmek için UISegmentedControl
var. Bu benim MyProfile.swift class
kodum. Farklı sorguları (hangisi çalışır) döndürmek için viewForSupplementaryElementOfKind
yönteminde bir hedef eklemeyi denedim, ancak sonuçta numberOfItemsInSection
ve cellForItemAtIndexPath
yöntemlerinde bölümlenmiş kontrole erişmem gerekiyor. "testObjects"
ve "writeObjects"
, viewForSupplementaryElementOfKind
'da addTarget
yöntemiyle sorgulanan array
değerleridir. indexPath
'u ancak ve error
'u açık nedenlerle belirledim ... Bölümlenmiş kontrole nasıl erişebilirim? başlık viewForSupplementaryElementOfKind
toplama görünümü için geri alındığındaUISegmentedControl'e UICollectionViewController başlığına nasıl erişebilirim?
override func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
var numberOfItems: Int? = 0
let indexPath = NSIndexPath(forItem: 0, inSection: 0)
let header = collectionView.dequeueReusableSupplementaryViewOfKind(UICollectionElementKindSectionHeader, withReuseIdentifier: "header", forIndexPath: indexPath) as! MyProfileHeader
if header.userContent.selectedSegmentIndex == 1 {
numberOfItems = textObjects.count
} else if header.userContent.selectedSegmentIndex == 2 {
numberOfItems = 0
} else {
numberOfItems = photoObjects.count
}
print("F: \(numberOfItems!)")
return numberOfItems!
}
gibi bir şey seni önerdi denedim ama hata alıyorum: henüz oluşturulmadı çünkü başlığını erişirken – user4513956
Belki bir null alıyorsanız "isteğe bağlı değer unwrapping ederken beklenmedik nil bulundu". Bunu karşılamak için cevabımı düzenledim. – davedavedave
Üzgün @davedavedave, bu kodu nereye ekleyeceğimi düşünmüyorum ... bu, viewDidLoad veya ...? Ayrıca, çok teşekkürler haha – user4513956