जहाँ तक मुझे याद है के रूप में, कि संकेत ऊपर पॉप जब एक वेब-दृश्य (एक एम्बेडेड छवि से एक प्रतिक्रिया उदाहरण के लिए,) एक अद्यतन प्राप्त, लेकिन क्योंकि यह उपयोग नहीं किया जाता यह गाया नहीं किया जा सका मुख्य धागे से अब और। इसका मतलब है, जब ViewController प्रदर्शित नहीं किया जा रहा है।
अगर ऐसी बात है, तो आप (उदाहरण के लिए, http://edition.cnn.com/ जैसे कुछ ऑनलाइन समाचार पत्र) भारी सामग्री के साथ एक वेब पेज लोड हो रहा है और लोड शुरू करने के बाद तुरंत वेबव्यू खारिज, धक्का/एक और पॉपिंग के द्वारा समस्या को ठीक करने में सक्षम होना चाहिए ViewController।
इसे कैसे ठीक करें: वास्तव में, आप तरीकों आप का उल्लेख कॉल करने की आवश्यकता:
webview.delegate = nil;
[webview stopLoading];
हालांकि, ऐसा करने के लिए जगह है, viewWillDisappear
पद्धति पर है dealloc
पर कभी नहीं। कारण सरल है: viewWillDisappear
को उस सटीक पल पर बुलाया जाता है जहां व्यू कंट्रोलर मुख्य धागे का नियंत्रण खोने वाला है। हालांकि, dealloc
को तब कहा जाता है जब वीसी ढेर पर रिलीज होने वाला है। यह कुछ सेकंड बाद हो सकता है, ऐप को क्रैश करने के लिए कुछ मूल्यवान समय दे रहा है, या शायद कभी भी कॉल नहीं किया जाएगा। दोनों तरीकों को स्थानांतरित करने से चाल चलनी चाहिए।
आप लक्षित कर रहे क्या iOS संस्करण? आप 'webview.delegate = nil' और '[वेबव्यू स्टॉपलोडिंग] कहां कह रहे हैं? – JAL
मैं आईओएस 7 + को लक्षित कर रहा हूं। शायद अगला संस्करण 8+ होगा। प्रतिनिधि = शून्य को डेलोक में बुलाया जाता है। स्टॉपलोडिंग को देखने में कहा जाता है WillDisappear। – Division
मैं बहुत यकीन है कि यह एक वेबकिट आंतरिक बग (कि iOS 7 में दिखाई दिया लेकिन आईओएस 8 के साथ तय हुई थी) जहां एप्पल से आधिकारिक समाधान "iOS 8. में नवीनीकृत करने के लिए" हो जाएगा हूँ मैं भी बदल रहा है जहाँ भी आप कॉल कर रहे हैं की कोशिश करता हूँ 'webview.delegate = nil' और' [वेबव्यू stopLoading] ',' viewWillDisapear' या 'dealloc' में यह कॉल करने का प्रयास। – JAL