इसका कारण यह है जिस तरह से है MKMapViewकाम करता है। वहाँ एक ऑपरेशन लंबित है, तो MapKit को बनाए रखना है MKMapViewऔर यह वास्तव में अभी तक पुनः आवंटित की जाती नहीं किया गया है। यही कारण है कि एक समस्या ही नहीं है। समस्या यह है कि यह अभी भी अपने प्रतिनिधि को संदेश भेज रहा है है।
वैकल्पिक हल आसान है: आपके विचार नियंत्रक के सफाई का हिस्सा के लिए नक्शा दृश्य के प्रतिनिधि सेट के रूप में nilहै, जो नहीं कर पाएगा MKMapViewयह संदेश भेजने से।
इस में प्रलेखित है MKMapViewDelegate प्रोटोकॉल संदर्भ :
एक MKMapView वस्तु जिसके लिए आप एक प्रतिनिधि निर्धारित किया है को रिहा करने से पहले, नहीं के बराबर करने के लिए उस वस्तु के प्रतिनिधि गुण सेट करने के लिए याद है। एक ही स्थान पर आप यह कर सकते हैं dealloc विधि जहां मानचित्र दृश्य के निपटान में है।
संपादित करें: ऑस्कर जो प्रलेखन उद्धरण यहाँ प्रदान की एक वोट दें और साथ ही, बस नीचे, दे।
यह देखते हुए एआरसी, मेरा सुझाव यह मतलब है कि आप करने के लिए अपने मानचित्र दृश्य के प्रतिनिधि स्थापित करना चाहिए nilआपके विचार नियंत्रक के दशक में dealloc।