Tutarak bir UİButton bir dokunuş sonra seçilen
Benim kullanıcı bir düğmeye basana sonra bu düğme ağ operasyonu gerçekleştiren süre boyunca itti kalmak istiyorum. Ağ işlemi tamamlandığında, düğmeyi varsayılan durumuna geri dönmek istiyorum.
Düğmeye bas sonra[UIButton setSelected:YES]
(ağ op benim tamamlandıktan sonra -[UIButton setSelected:NO]
gelen bir çağrı ile) aramayı denedim ama hiçbir işe yaramıyor. Eğer setHighlighted:
ararsam aynı şey.
Arka plan görüntüsü ağ süresi için seçilen bir devlet op belirtmek için erkek çalışırım, ama bu bir hack gibi görünüyor. Daha iyi bir öneriniz var mı?
Benim kod şöyle görünür:
- (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;
}
CEVAP
Nasıl farklı görüntüler UIControlStates
düğmesini ayarı misin? UIControlStateHighlighted
UIControlStateSelected
için bir arka plan görüntüsü ayarlama misin?
UIImage *someImage = [UIImage imageNamed:@"SomeResource.png"];
[button setBackgroundImage:someImage forState:UIControlStateHighlighted];
[button setBackgroundImage:someImage forState:UIControlStateSelected];
Eğer düğmesini seçili duruma olay iniş yerine içine temas kurma iseniz, düğme aslında bunu da ayarlamak istersiniz vurgulanan seçili durumda olacaktır.
[button setBackgroundImage:someImage forState:(UIControlStateHighlighted|UIControlStateSelected)];
Düzenleme:
Yorum yaptığım konuşmada özetle ve kod adrese gönderildi...UIControl
tam devlet için arka plan resimleri ayarlamak gerekir. Kod parçacığını göre, bu denetim, devlet ağ işlem süresi için seçilen vurgulanan devre dışı olacaktır. Bu yapmak gerekir anlamına gelir:
[button setBackgroundImage:someImage forState:(UIControlStateDisabled|UIControlStateHighlighted|UIControlStateSelected)];
highlighted = YES
kaldırmak, o zaman buna ihtiyacın olacak:
[button setBackgroundImage:someImage forState:(UIControlStateDisabled|UIControlStateSelected)];
Anladın mı şimdi?
Onları ekledikten sonra uzak depodan d...
move_uploaded_file verir "stream ...
Seçilen öğeyi (Liste Görünümü) Değişti...
Nasıl bir çatışma Çek sonra çözerim?...
Neden python 'başka' sonra v...