Ios 我能';t从通知块中删除UIWindowLevelAlert级别UIWindow
我在@interface和@end之间声明一个UIWindow,如下所示:Ios 我能';t从通知块中删除UIWindowLevelAlert级别UIWindow,ios,objective-c,Ios,Objective C,我在@interface和@end之间声明一个UIWindow,如下所示: @interface @property (strong,nonatomic) UIWindow *aWindow; @end 然后我在viewDidLoad中初始化了它 - (void)viewDidLoad { _aWindow = [UIWindow alloc] initWithFrame:aFrame; _aWindow.backgroundColor = [UIColor redColor]
@interface
@property (strong,nonatomic) UIWindow *aWindow;
@end
然后我在viewDidLoad中初始化了它
- (void)viewDidLoad {
_aWindow = [UIWindow alloc] initWithFrame:aFrame;
_aWindow.backgroundColor = [UIColor redColor];
_aWindow.windowLevel = UIWindowLevelNormal;
}
现在,我想通过在NotificationCenter块中调用removeFromSuperview来删除此窗口:
[[NSNotificationCenter defaultCenter] addObserverForName:CloseWindowNotification object:nil queue:[NSOperationQueue mainQueue] usingBlock:^(NSNotification *note) {
[self.aWindow removeFromSuperview];
self.aWindow = nil;
}
它不起作用了。调用此命令后,此窗口仍然存在
我尝试将self.aWindow=nil
放在这个块之外,它可以工作。我还尝试使用UIWindowLevelNormal
,并成功地在这个块中删除了它
有人能告诉我为什么我不能把这扇窗户移走吗?
谢谢