gpt4 book ai didi

iphone - 如何将 bool 状态发布到 NSNotificationCenter?

转载 作者:可可西里 更新时间:2023-11-01 04:10:18 26 4
gpt4 key购买 nike

我正在尝试掌握使用通知的窍门。在我的 View Controller 类中,我有一个 bool isFullScreen。当这个 bool 的值发生变化时,我想向所有观察类发送一个通知。我不太清楚该怎么做,因为 BOOL 不是对象。我将如何做到这一点?

最佳答案

[[NSNotificationCenter defaultCenter] postNotificationName:YourNotificationName object:[NSNumber numberWithBool:isFullScreen]]; //YourNotificationName is a string constant

KVO 示例:

如果你要用 KVO 来做,它会像下面这样......:

[self addObserver:self forKeyPath:@"isFullScreen" options:(NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld) context:nil];

- (void) observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
if ([keyPath isEqualToString: @"isFullScreen"]) {
BOOL newValue = [[change objectForKey:NSKeyValueChangeNewKey] boolValue];
}
}

//and in dealloc
[self removeObserver:self forKeyPath:@"isFullScreen" ];

关于iphone - 如何将 bool 状态发布到 NSNotificationCenter?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9840747/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com