Ich habe einen View-Controller mit mehreren Collection-Ansichten.Mehrfachsammlungsansichten mit derselben XIB-Zelle und Schaltfläche
Jede Sammlungsansicht verwendet dieselbe benutzerdefinierte Zelle mit xib. In dieser XIB habe ich einen Knopf.
Die collectionViews Namen sind
1) manPerfumeCV
2) womanPerfumeCV
3) kidsPerfumeCV
Innen cellForItemAt
i cell.productCart.tag = indexPath.row
let cell:iPhoneCollectionViewCell = collectionView.dequeueReusableCell(withReuseIdentifier: "iPhoneCell", for: indexPath) as! iPhoneCollectionViewCell
if collectionView == self.womanPerfumeCV {
let prods = womanPerfumeData[indexPath.row]
cell.configureCell(products: prods)
cell.productCart.tag = indexPath.row
} else if collectionView == self.manPerfumeCV {
let prods = manPerfumeData[indexPath.row]
cell.configureCell(products: prods)
cell.productCart.tag = indexPath.row
} else if collectionView == self.kidsPerfumeCV {
let prods = kidsPerfumeData[indexPath.row]
cell.configureCell(products: prods)
cell.productCart.tag = indexPath.row
}
und in der gleichen Ansicht Controller haben habe ich diese Aktion für die Schaltfläche aus der xib Datei
@IBAction func iPhoneAddToCart(_ sender: AnyObject) {
let butt = sender as! UIButton
let indexP = IndexPath(row: butt.tag, section: 0)
let cell = manPerfumeCV.cellForItem(at: indexP) as! iPhoneCollectionViewCell
print(manPerfumeData[indexP.row].price)
}
Jede Kollektionsansicht hat ihre eigenen [Produkte] ar Strahl.
1) manPerfumeData
2) womanPerfumeData
3) kidPerfumeData.
In meinem Code, wenn ich auf die Schaltfläche tippen, die mit manPerfumeData an der ersten Sammlung Sicht ist es sehr gut, den Preis druckt.
Obwohl, wenn ich den Knopf auf der 2. oder 3. Sammlung drücken, stürzt die App ab.
Gibt es eine Möglichkeit zu wissen, von welcher Sammelansicht er den Knopf drückte, damit ich das spezifische [Products] Array laden kann?
Danke!
was sehen Sie in Debugger-Ausgabedatei machen hinzufügen? –
@SinaKH Schwerwiegender Fehler: unerwartet gefunden Null beim Entpacken ein Optionaler Wert 2017-01-30 14: 25: 38.928171 Aromania [19538: 6823926] Schwerwiegender Fehler: unerwartet beim Dekomprimieren Null gefunden Optionaler Wert Es ist weil in 'print' Ich habe nur die 'manPerfumeData'. Wie kann ich erkennen, in welcher Sammlungsansicht der Button gedrückt wurde? –