UISwitch'i anahtar durumları için özel grafiklerle uygulamanın bir yolu var mı? Veya başka bir alternatif olarak UISwitch işlevselliğine sahip bir UIButton?UISwitch işlevselliğine sahip iPhone UIButut
cevap
UIButton
zaten "anahtarı" işlevselliği destekler.
"Seçili Durum Yapılandırması" için Arabirim Oluşturucusu'nda farklı bir görüntü ayarlayın ve durumunu değiştirmek için UIButton
'un selected
özelliğini kullanın. set,
button.selected = YES;
bu başka düğme seçimini iptal etmek istiyorsanız: set up seçicinin içindeki touch sonra
[button setImage:[UIImage imageNamed:@"btn_graphics"] forState:UIControlStateSelected];
ve:
Dokunarak/seçtikten sonra normale döner. IB ile yapmış olduğum şey budur. \t [favButton setImage: favOff forState: UIControlStateNormal]; \t [favButton setImage: favOn forState: UIControlStateHighlighted]; \t [favButton setImage: favOn forState: UIControlStateSelected]; \t [favButton setBackgroundColor: [UIColor clearColor]]; \t [self.view addSubview: favButton]; "SetSelected" – scud
Tamam ben teşekkür – scud
, aradığı özellik UISwitch güzel onun durum değişikliği canlandıran oldu. UIButton değişen durumunu nasıl canlandıracağımı merak ediyorum. Herhangi bir fikir? – radven
seçilen durumuna göstermek için görüntüyü ayarlayın
otherButton.selected = NO;
Durumunuzu belirledikten ve bir sele ekledikten sonra, PGB ve neyin yukarıda söylediklerini inşa etmek için ctor (event method) bu kodu bu seçiciye koymak isteyeceksiniz. programlı eğimli için
- (IBAction)cost:(id)sender
{
//Toggle current state and save
self.buttonTest.selected = !self.buttonTest.selected;
/**
The rest of your method goes here.
*/
}
: tam bir tekrarı olarak bu soruyu kapatmak için oy Kim
-(void) addToggleButton {
CGRect aframe = CGRectMake(0,0,100,100);
UIImage *selectedImage = [UIImage imageNamed:@"selected"];
UIImage *unselectedImage = [UIImage imageNamed:@"unselected"];
self.toggleUIButton = [[UIButton alloc] initWithFrame:aframe];
[self.toggleUIButton setImage:unselectedImage forState:UIControlStateNormal];
[self.toggleUIButton setImage:selectedImage forState:UIControlStateSelected];
[self.toggleUIButton addTarget:self
action:@selector(clickToggle:)
forControlEvents:UIControlEventTouchUpInside];
[self addSubview:self.toggleUIButton];
}
-(void) clickToggle:(id) sender {
BOOL isSelected = [(UIButton *)sender isSelected];
[(UIButton *) sender setSelected:!isSelected];
}
, en azından birinin kopyası göndermek açıklayan bir yorum sağlamalıdır. – Jasarien