Dopo che il mio utente fa clic su un pulsante, desidero che il pulsante rimanga premuto per tutto il tempo in cui eseguo un'operazione di rete. Quando l'operazione di rete è completa, voglio che il pulsante torni allo stato predefinito.
Ho provato a chiamare - [UIButton setSelected:YES]
subito dopo aver premuto il pulsante (con una chiamata corrispondente a - al [UIButton setSelected:NO]
termine dell'operazione di rete) ma sembra che non faccia nulla. Stessa cosa se chiamo setHighlighted:
.
Suppongo di poter provare a scambiare l'immagine di sfondo per indicare uno stato selezionato per la durata dell'operazione di rete, ma sembra un trucco. Qualche suggerimento migliore?
Ecco come appare il mio codice:
- (IBAction)checkInButtonPushed
{
self.checkInButton.enabled = NO;
self.checkInButton.selected = YES;
self.checkInButton.highlighted = YES;
[self.checkInActivityIndicatorView startAnimating];
[CheckInOperation startWithPlace:self.place delegate:self];
}
- (void)checkInCompletedWithNewFeedItem:(FeedItem*)newFeedItem wasNewPlace:(BOOL)newPlace possibleError:(NSError*)error;
{
[self.checkInActivityIndicatorView stopAnimating];
self.checkInButton.enabled = YES;
self.checkInButton.selected = NO;
self.checkInButton.highlighted = NO;
}