2017-07-15 4 views
1

nicht auf das Image gesetzt werden Der Button innerhalb von UITableViewCell reagiert nicht auf die setImage-Methode innerhalb der angeklickten Methode. Hier ist der Abschnitt cellForRowAt für TableView.UIButton in TableViewCell konnte nach dem Klicken auf

Und ich habe nur seinen ausgewählten Zustand innerhalb der ButtonClicked-Implementierung festgelegt.

func buttonClicked(sender:UIButton) 
{ 
    sender.isSelected=true 
} 

Aber das Bild ändert sich nicht danach. Es ändert sich nur nach dem Aufruf der cellForRowAt-Methode für die jeweilige Zeile. Ich verstehe nicht, warum es auf denselben Code-Teil anders reagiert. Danke für jede Hilfe.

+0

mein See Antwort auf diesen Beitrag - (Link) [https://stackoverflow.com/questions/44393575/checkbox-uitableview-with-differ ent-sections/44398444 # 44398444] - Es verwendet zwei Bilder für ein 'UIButton' in einem' UITableViewCell', um ein ausgewähltes/nicht ausgewähltes "CheckBox" zu erzeugen, was wirklich nahe bei dem sein sollte, was Sie versuchen zu tun. – DonMag

Antwort

0

Sie haben die Taste sagen, was zu tun ist:

func buttonClicked(sender:UIButton) 
{ 
    if myButton.isSelected { 
     myButton.isSelected = false 
    }else{ 
     myButton.isSelected = true 
    } 
} 

configure Ihre Schaltfläche benutzerdefinierte sein:

let myButton = UIButton(type: .custom) 

Oder in Inspektor Attribute:

attributes Inspector forbutton

+0

selected wurde in isSelected in meiner Version umbenannt, auch die Einstellung isSelected true funktioniert erwartungsgemäß innerhalb der cellForRowAt-Methode. – umutg4d

+0

Frage: Wird Ihre buttonClicked-Methode überhaupt ausgelöst? und BTW versuchen, Ihren Button-Typ zu benutzerdefinierten –

+0

Ja, es wird ausgelöst. Auch wenn ich die Debug-Ansichtshierarchie öffne, kann ich sehen, dass das Button-Image erfolgreich geändert wurde. Aber auf diese Änderung reagiert das Gerät nicht. – umutg4d

Verwandte Themen