ios - I can't remove a UIWindowLevelAlert level UIWindow from a notification block -
मैं एक UIWindow को @interface और @end के बीच घोषित करता हूं:
@interface @ संपत्ति (मजबूत, गैर-नियत) UIWindow * aWindow; @end तब मैंने इसे दृश्यडेटाड में आरंभ किया
- (शून्य) दृश्यडिडलोड {_aWindow = [UIWindow alloc] initWithFrame: aFrame; _aWindow.backgroundColor = [UIColor redColor]; _aWindow.windowLevel = UIWindowLevelNormal; } अब मैं NotificationCenter ब्लॉक में removeFromSuperview को कॉल करके इस विंडो को हटाना चाहता हूं:
[[NSNotificationCenter defaultCenter] addObserverForName: CloseWindowNotification ऑब्जेक्ट: शून्य कतार: [NSOperationQueue mainQueue] का उपयोग करके ब्लॉक: ^ (NSNotification * नोट) {[आत्म। स्वयं। एविंडो = शून्य; } यह काम नहीं कर रहा है इसे कॉल करने के बाद, यह खिड़की अब भी वहां है।
मैंने इस कोड के बाहर self.aWindow = nil डालने की कोशिश की, यह काम करता है। मैंने भी UIWindowLevelNormal का उपयोग करने की कोशिश की और इस ब्लॉक के अंदर इसे हटाने में सफल हुआ।
क्या कोई मुझे बता सकता है कि मैं इस विंडो को ब्लॉक के अंदर क्यों नहीं हटा सकता? धन्यवाद!
Comments
Post a Comment