2010-07-21 4 views
7
-(void)setState:(id)sender 
{ 
    UIButton* button = (UIButton*)sender; 
    BOOL buttonBool = ([button state]==selected : YES ? NO); 
    [sender setSelected:buttonBool++]; 

} 

das ist meine Idee, aber ich kann den tatsächlichen Zustand des Knopfes nicht herausfinden, der die Funktion aufruft. Jede Schaltfläche, die diese Funktion aufruft, sollte zwischen Standard und ausgewähltem Zustand umgeschaltet werden, so dass sie wie ein Schalter funktioniert. Ich brauche nur eigene Hintergrundgrafiken, sonst hätte ich einen Schalter benutzt.toggle UIButton-state beim Drücken, wie ein Schalter

also, kann jemand bitte meine Idee korrigieren?

Antwort

20

Versuchen Sie, diese Art und Weise:

-(void)setState:(id)sender 
{ 
    UIButton* button = (UIButton*)sender; 
    button.selected = !button.selected; 
} 
+0

oh .. das war zu einfach ! Ich denke, dass das funktioniert, wie ich will, dass es funktioniert, danke. Ich werde es morgen versuchen Nachricht: Sie können eine Antwort in 8 Minuten akzeptieren, also werde ich morgen das annehmen – nico

+0

@Vladimir Danke. Es funktioniert perfekt! – Bhagyashree

+0

Ja, das ist die ** schlaue Art, +1 zu programmieren! –

1

Swift 3-Wege:

func setState(button: UIButton) { 
    button.isSelected = !button.isSelected 
} 

(. Dank @ nadi-hassan für die Swift 3 Spitze)

+1

swift 3 umbenannt "ausgewählt" zu "isSelected" –

+0

Danke @NadiHassan – finneycanhelp

Verwandte Themen