Моя программа выполняет метод buttonPressed и проходит оператор if else, но текст на моей кнопке по-прежнему не изменяется. Я что-то пропустил? Я даже уже настроил его в xib, но текст кнопкиPlayMusic остался как «Play», даже если он переходит в другое утверждение.Измените текст UIButton при нажатии
Я думаю, что я тоже подключил кнопку.
[viewDidLoad]
{
self.buttonPlayMusic = [UIButton buttonWithType:UIButtonTypeRoundedRect];
self.buttonPlayMusic.frame = CGRectMake(((scrollView.frame.size.width - 200)/2) + cx, 360, 200, 50);
[self.buttonPlayMusic setTitle:@"Play" forState:UIControlStateNormal];
[self.buttonPlayMusic addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
self.toggleButonPlayMusic = YES; //YES to play, NO to stop music
[scrollView addSubview:self.buttonPlayMusic];
}
-(IBAction)buttonPressed:(id)sender{
NSLog(@"SSS");
if (self.toggleButonPlayMusic == YES) {
[self.buttonPlayMusic setTitle:@"Stop" forState:UIControlStateNormal];
self.toggleButonPlayMusic = NO;
NSLog(@"RRR");
}else{
[self.buttonPlayMusic setTitle:@"Play" forState:UIControlStateNormal];
self.toggleButonPlayMusic = YES;
NSLog(@"ZZZ");
}
}
Это должно работать нормально. Вы проверили, чтобы кнопка не была нулевой (т. Е. По какой-то причине вы на самом деле не ссылаетесь на нее). – AdamG
self.toggleButonPlayMusic - это переменная Bool? –
@eptdeveloper да, это логическое –