2017-04-23 1 views
0

Ich habe eine Klasse für die benutzerdefinierte Zelle erstellt, die ich für eine Sammlungsansicht in meiner App verwende. In dieser Zelle habe ich einen Button, den ich zu einem anderen Storyboard aus dem aktuellen führen möchte. Also habe ich versucht, das Geschenk wie folgt zu verwenden:Die UICollectoinViewCell hat kein Mitglied der Gegenwart (um eine andere Ansicht zu präsentieren)?

aber es gibt ein Problem mit dem Absender, der in diesem Fall selbst ist. Der Fehler sagt UICollectionViewCell hat kein Mitglied der Gegenwart, die Sinn machen. Aber wie kann ich dann mein Ziel erreichen, da ich vielleicht dasselbe Konzept für Segus verwenden muss, um Informationen von einem Storyboard auf ein anderes zu übertragen? CollectionViewCell hinzufügen Button als IBOutlet dh

class CustomCollectionViewCell : UICollectionViewCell 
{ 
    @IBOutlet weak var btnDemo: UIButton! 
    //Otherstuff 
} 

+0

Eigentlich kann man nicht self.present von CustomCell aufrufen, sondern diese Methode im Controller aufrufen und hinzufügen, in der UICollectionView existiert –

Antwort

1

Die Lösung für Ihr Problem kann

In Ihrem benutzerdefinierten auf diese Weise festgelegt und in den ViewController, dass die CollectionView hinzufügen IBAction aus dem diesen UIButton auf das hat CustomCell und in der CellForRowAtIndexPath müssen Sie Tag zu dieser Schaltfläche hinzufügen, um zu identifizieren, welche Schaltfläche Sie geklickt haben, dh

class ViewController : UIViewController 
{ 
    @IBAction func btnButtonPressed(_ sender: Any) 
    {   
     let currentBtn = sender as UIButton 
    } 
    func collectionView(collectionView: UICollectionView, 
     cellForItemAtIndexPath indexPath: NSIndexPath) -> 
     UICollectionViewCell 
    { 
     //Initialize Cell and other necessary stuff 
     currentCell.btnDemo.tag = indexPath.row 
    } 
Verwandte Themen