2016-06-23 10 views
-3

Ich habe eine Zelle, die ich verwenden möchte, und ich möchte nur eine Steckdose für die Schaltfläche in der Zelle, damit ich ein Dropdown-Menü anzeigen kann. Ich versuche, eine Taste mit einem Tag zu machen mit diesem CodeIch kann keine Taste mit Tag einrichten

var dropdownButton: UIButton = (PostCell.viewWithTag(200) as! UIButton) 

ich es in der cellForRowAtIndexPath bin mit aber die Sache ist, halte ich einen Fehler bekommen

„Verwendung von Instanz Mitglieds viewWithTag sagen 'vom Typ ‚UIView‘, meinten Sie einen Wert vom Typ verwenden ‚UIView‘ Statt

+1

viewWIthTag ist eine Methode, die Sie für Objekte vom Typ UIVIew verwenden können. POSTCell ist keine UIView. –

Antwort

0

versuchen, den Code als

var dropdownButton: UIButton = (postCell.contentView.viewWithTag(200) as? UIButton) 

Sie verwenden verwenden PostCell scheint l? wenn Sie direkt über den Klassennamen darauf zugreifen. Versuchen Sie, mit dem Objekt der UITableViewCell zuzugreifen. Alle Ansichten auf UITableViewCell sind auf seinem ContentView platziert, so dass Sie von dort auf die Schaltfläche zugreifen.

Verwenden Sie auch ?, um das Objekt als Schaltfläche zu erhalten, denn wenn Sie ! App verwenden, kann Absturz auftreten, wenn das Objekt aus irgendeinem Grund nicht für Tag 200 gefunden wird.

Um zu verhindern, dass die App abstürzt, verwenden Sie ?.