objective c - nsstring - out of scope -


  - (शून्य) loadWebAdress: (NSString *) textAdress {{UIApplication साझा किया गया अनुप्रयोग} .networkActivityIndicatorVisible = YES; Adressurl = [NSString stringWithFormat: @ "http: //% @", पाठ विज्ञापन]; NSURL * url = [NSURL URLWithString: adressurl]; NSURLRequest * requestObj = [NSURL अनुरोध अनुरोध विथ url: url]; [वेबव्यू लोड अनुरोध: अनुरोध ओबज]; }  

यद्यपि यूआरएल इसे एड्रेसलल से लेता है, डिबगर में चेक किए जाने पर एड्रेसलल समय के दायरे से बाहर है। क्या हो रहा है? मैं इसे कुछ अन्य स्थानों में भी उपयोग करना चाहूंगा न केवल इस पद्धति में क्योंकि दायरे से बाहर है, ऐप क्रैश हो जाता है लेकिन, मैं दोहराता हूं, यह वह है जो यूआरएल को अपना मान देता है।

यह उस पर निर्भर करता है जहां adressurl चर घोषित किया गया है। चूंकि यह विधि पैरामीटर से उत्पन्न होता है, यह अजीब लगता है कि आप इसे कोड में कहीं और का उपयोग करना चाहते हैं। यदि आप इसे एक स्थिर वैरिएबल के रूप में रखते हैं, तो यह अन्य कोड द्वारा गड़बड़ हो सकता है। (उदाहरण के लिए, यदि आप इसे इस विधि में एक मान में सेट करते हैं, और किसी अन्य जगह में, क्रैश होने के लिए असामान्य नहीं है, खासकर यदि आप दोनों के बीच समन्वय या सिंक्रनाइज़ नहीं करते हैं। ग्लोबल्स / स्टैटिक्स से बचने के लिए एक कारण) यदि आप चाहें तो अलग-अलग तरीकों में एक ही स्थानीय चर नाम का उपयोग करने के लिए स्वतंत्र हैं।

यहां मैं जो सुझाव देता हूं: ( नोट: मैंने कुछ टाइपो तय किए हैं। )

  - (शून्य) लोड वेबबेस: (NSString *) पाठअड्डे {[UIApplication साझा किया गया अनुप्रयोग] .नेटवर्कविश्लेषितविवेशकयोजना = हाँ; NSURL * url = [NSURL URLWithString: [NSString stringWithFormat: @ "http: //% @", पाठ प्रविष्टि]]; [वेबव्यू लोड अनुरोध: [एनएसयूआरआर अनुरोध अनुरोध विथ url: url]]; }  

यह छोटा है और अनावश्यक चर से बचा जाता है। चूंकि "http: //" उपसर्ग काफी आम है, ऐसा पुन: उपयोग करने जैसा नहीं लगता है जो कि बहुत लाभ प्रदान करेगा


संपादित करें: मेरी टिप्पणी में किसी टाइपो को स्पष्ट करने के लिए, आप URL को UIWebView से एक स्ट्रिंग के रूप में निम्नानुसार प्राप्त कर सकते हैं:

<पूर्व> [[[वेबव्यू अनुरोध] यूआरएल] पूर्ण स्ट्रिंग]

यह एक साथ चिपकाए गए निम्नलिखित विधियों का उपयोग करता है:

  • < / Li>

Comments