2012-08-27 2 views
11

Ho un bottone che voglio usare un'immagine di sfondo diverso quando in stato evidenziato, normalmente vorrei usare qualcosa comeimmagine diversa quando pulsante da storyboard sfruttato

[buttonObject setBackgroundImage:[UIImage imageNamed:@"buttonDown.png"] 
         forState:UIControlStateHighlighted]; 

ma il pulsante è in un file .storyboard non codice
Cosa dovrei usare in questa situazione?

+2

È ancora possibile collegare "buttonObject" all'IBOutlet e utilizzare il proprio codice. – WrightsCS

risposta

37

È possibile impostare proprietà diverse per i diversi Stati in IB troppo, selezionando lo stato dal menu a tendina:

enter image description here

Se si vuole fare nel codice, è necessario configurare una presa e impostare le immagini in awakeFromNib.

@property (nonatomic, weak) IBOutlet UIButton *button; 

Per collegare l'uscita, si Ctrl -Trascinare dal pulsante al proprietario del file (probabilmente un controller della vista) e selezionare l'uscita sopra definito.

Quindi è possibile accedere al pulsante nel codice:

- (void)awakeFromNib { 
    [button setBackgroundImage:[UIImage imageNamed:@"buttonDown.png"] 
         forState:UIControlStateHighlighted]; 
} 
+1

+1 per la configurazione non di codice impostata e lo screenshot. Saluti. –

1

Perché non utilizzano prese?

Configuring the View da Apple doc.

Spero che questo aiuti.

+0

Perché puoi farlo tramite lo storyboard: http://stackoverflow.com/a/12150649/1442541 – evya