non funzionano quando un UIButton è impostato in modalità UIButtonTypeCustom ! Die Zustände UIControlStateSelected oder UIControlStateHighlighted nicht funktionieren, wenn ein UIButton in Modus eingestellt ist UIButtonTypeCustom ! Oder besser gesagt, nicht funktionieren wie sie sollten (weil für andere Arten von Taste vorbehalten), zum Beispiel, um eine Schaltfläche mit zwei Zuständen erstellen: Kipp beachten. Wenn wir zwei Bilder (stato1.png und stato2.png) für unseren Button erstellt haben, können wir auf diese Weise vorgehen:
1 2 3 | / / Die Header-Datei erstellen wir eine globale Variable, die für usaremo / / Prüfen Sie den Kippschalter waren BOOL toggleFlag; |
Jetzt erstellen wir unseren Button:
1 2 3 4 5 6 7 8 9 | / / Creaiamo eine Taste, und wir stellen Sie es zuerst in der "stato1.png" / / Edit initWithFrame: (CGRect) {} 100,100,50,50 mit der Lage und / / Größe des spiegelnden Bildgebung ; toggleFlag = YES; [ [ UIButton buttonWithType : UIButtonTypeCustom ] initWithFrame : ( CGRect ) { 100 , 100 , 50 , 50 } ] ; UIButton * ToggleButton = [[UIButton buttonWithType: UIButtonTypeCustom] initWithFrame: (CGRect) {100, 100, 50, 50}]; @ "" forState : UIControlStateNormal ] ; [ToggleButton setTitle: @ "" fürState: UIControlStateNormal]; [ UIImage imageNamed : @ "stato1.png" ] forState : UIControlStateNormal ] ; [ToggleButton SetBackgroundImage: [UIImage imageNamed: @ "stato1.png"] fürState: UIControlStateNormal]; self action : @selector ( onToggle : ) forControlEvents : UIControlEventTouchUpInside ] ; [ToggleButton addTarget: self Aktion: @ selector (onToggle :) forControlEvents: UIControlEventTouchUpInside]; toggleButton ] ; [Self.view addSubview: ToggleButton]; |
Wenn Sie auf die Schaltfläche klicken wird eine Botschaft durch gehandhabt onToggle :
1 2 3 4 5 6 7 | void ) onToggle : ( id ) sender { - (Void) onToggle: (id) sender { / / Abrufen Zeiger auf UIButton ( UIButton * ) sender; ButtonClicked UIButton * = (UIButton *) sender; / / Ich laufe toogle toggleFlag = toggleFlag!; [ UIImage imageNamed : ( toggleFlag ) ? @ "stato1.png" : @ "stato2.png" ] forState : UIControlStateNormal ] ; [? ButtonClicked SetBackgroundImage: [UIImage imageNamed: (toggleFlag) @ "Stato1.png": @ "stato2.png"] fürState: UIControlStateNormal]; } |










Es sind keine Kommentare für diesen Beitrag
Hinterlasse einen Kommentar