Я хочу скрыть свою кнопку в классе Popover, когда значение моего bool в другом классе ложно, но проблема в том, что я не получаю значение «ИСТИНА».Проверьте, не изменилось ли значение Bool
Мой первый класс
-(void) hideButton{
finished = _secondVC.finished;
BOOL isRunning = !finished;
if(isRunning){
_deleteButton.hidden = YES;
}else if(finished){
_deleteButton.hidden = NO;
}
}
Я называю метод hideButton в моей функции ViewWillAppear.
Мой второй класс
-(void) someAction{
if(something){
self.finished = YES;
}
EDIT:
Теперь, если я загрузить поповер и NSNotification увольняют кнопка включена, но проблема в том, если я закрыть и открыть поповер, моя кнопка удаления по-прежнему отключена.
Мой поповер Класс
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
if(syncFinished){
_deleteButton.enabled = YES;
}else if(!syncFinished){
_deleteButton.enabled = NO;
}
}
- (void)viewDidLoad {
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(showButton)
name:@"syncFinish"
object:nil];
}
- (void) showButton{
syncFinished = YES;
_deleteButton.enabled = YES;
}
Мой второй класс
-(void) someAction{
if(something){
[[NSNotificationCenter defaultCenter] postNotificationName:@"syncFinish"
object:self];
}
Ваш вопрос остается неясным. Где вы наблюдаете значение «BOOL»? Как связаны два метода из этих двух классов? – rmaddy
Вам нужно быть более четким, чем «не получить истинное значение». Я предполагаю, что вы можете использовать слово «Наблюдение» в названии в английском смысле, в то время как читатели предполагают, что вы имеете в виду его технический смысл в «Key value observing» (KVO). Измените свой вопрос, чтобы предоставить более подробную информацию, и кто-то может вам помочь. – CRD
Логика в вашем коде мучительна. Пожалуйста, поймите, что 'if (вещь)' then' else' уже означает '! Thing', и нет необходимости ставить' else if (! Thing) '. – trojanfoe