2014-07-14 13 views
11

खारिज मैं निम्नलिखित तरीके से सूचना बनाने के हूँ:UIAlertView चेतावनी जब

let alert = UIAlertView(title: "Network Unavailable", 
         message: "Oh noes!", 
        delegate: nil, 
      cancelButtonTitle: "OK") 
alert.show() 

वर्क्स ठीक। लेकिन जब मैं अलर्ट को खारिज करने के लिए 'ठीक' बटन पर क्लिक करें, मैं इस मिल:

चेतावनी: प्रयास दृश्य नियंत्रक < _UIAlertShimPresentingViewController से खारिज करने के लिए: जबकि एक प्रस्तुति 0x16ea2230> या खारिज कार्य प्रगति पर है!

कुछ संदर्भ: (! दृश्य: SKView)

  1. चेतावनी didMoveToView में बन जाता है एक SKScene का कार्य करते हैं।
  2. यह Xcode 6 बीटा में है 3.
  3. मेरी उदाहरण तेज है, लेकिन यह भी ऑब्जेक्टिव-सी

कोई भी विचार क्यों इस चेतावनी से होने वाली हो सकती है से क्या होता है? यदि मैं आईओएस के भविष्य के संस्करण में घातक त्रुटि में बदल जाता हूं तो मैं इसे अनदेखा नहीं करना चाहता हूं।

अद्यतन

मैं भी जोड़ना चाहिए कि जब चेतावनी दिखाई देता है, जब मैं डीबग चयन -> देखें डिबगिंग -> कैद देखें पदानुक्रम, चेतावनी विचारों के 3 डी दृश्य में दिखाया गया है। मैं सोच रहा हूं कि यह कुछ गलत है जो मैं गलत कर रहा हूं।

+2

क्यों ** स्पष्ट रूप से ** स्विफ्ट में ?! मुझे व्यक्तिगत रूप से लगता है कि स्विफ्ट सबसे भ्रमित, परेशान और खराब डिजाइन की गई भाषाओं में से एक है जिसे मैंने कभी पढ़ा है ... फिर भी, मेरे पास एक ही समस्या है और लगता है कि यह अभी भी एक बग हो सकता है! मन हम अभी भी बीटा में हैं! –

+0

@ जुलीयन - "स्पष्ट रूप से तेज़ी से" क्योंकि कोड उदाहरण तेजी से नहीं है क्योंकि बग केवल स्विफ्ट में प्रकट होता है। ओपी स्पष्ट रूप से इसकी एक तेज बग चिंतित है। –

+1

क्या आपने इन समाधानों का प्रयास किया है: http://stackoverflow.com/questions/14907518/modal-view-controllers-how-to-display-and-dismiss –

उत्तर

5

मैं एक ही चेतावनी हो रही थी:

चेतावनी: प्रयास दृश्य नियंत्रक से खारिज करने के लिए < _UIAlertShimPresentingViewController:> जबकि एक प्रस्तुति या खारिज कार्य प्रगति पर है!

आईओएस 8 में, UIAlertController UIAlertView को प्रतिस्थापित करता है।

UIAlertController *alert = 
    [UIAlertController alertControllerWithTitle:@"Network Unavailable" 
             message:@"Oh noes!" 
           preferredStyle:UIAlertControllerStyleAlert]; 

UIAlertAction *cancelAction = 
    [UIAlertAction actionWithTitle:@"Ok" 
          style:UIAlertActionStyleCancel 
         handler:^(UIAlertAction *action) { 
                 }]; 
[alert addAction:cancelAction];  
[self presentViewController:alert animated:YES completion:nil]; 

अधिक जानकारी के लिए documentation for UIAlertController देखें: यह आपके चेतावनी (ObjC में) को हल करना चाहिए।

+0

बिल्कुल सही! वह चाल है। धन्यवाद। – Pinxaton