Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> IOS

मैं स्विफ्ट का उपयोग करके आईओएस डिवाइस पर यूआरएल द्वारा एक छवि कैसे लोड करूं?

<घंटा/>

स्विफ्ट का उपयोग करके आईओएस में एक छवि लोड करने के लिए हम साधारण डेटा कार्य सत्र का उपयोग करेंगे। छवि को पृष्ठभूमि में लोड करने की आवश्यकता है क्योंकि यह किसी भी आकार का हो सकता है और हम नहीं चाहते कि यह हमारे मुख्य दृश्य के संचालन को रोक दे।

इसे एक उदाहरण की मदद से देखते हैं। एक खाली प्रोजेक्ट बनाएं और एक खाली इमेज व्यू जोड़ें।

इसका आउटलेट बनाएं और फिर हम URL से इमेज प्राप्त करने के लिए कोड लिखेंगे। इस समय हमारा आवेदन इस तरह दिखता है।

मैं स्विफ्ट का उपयोग करके आईओएस डिवाइस पर यूआरएल द्वारा एक छवि कैसे लोड करूं?

अब, URL से चित्र प्राप्त करने के लिए कोड जोड़ें।

func getData (url से:URL, पूर्णता:@escaping (डेटा?, URLResponse?, त्रुटि?) -> ()) { URLSession.shared.dataTask (साथ:url, पूर्णताहैंडलर:पूर्णता)। फिर से शुरू ()} func downloadImage (url से:URL) {getData (से:url) {डेटा, प्रतिक्रिया, गार्ड में त्रुटि डेटा =डेटा, त्रुटि ==nil अन्य {वापसी} DispatchQueue.main.async () {self.image =UIImage ( डेटा:डेटा) } }}

जब हम इस कोड को चलाते हैं, तो यह यूआरएल से इमेज डाउनलोड करेगा, हम इमेज ऑब्जेक्ट बना सकते हैं और नए ऑब्जेक्ट के साथ अपने imgView को इनिशियलाइज़ कर सकते हैं।

लेकिन आइए इस पद्धति का एक विस्तार बनाएं और उपयोग करें।

<पूर्व>विस्तार UIImageView { func getData (url से:URL, पूर्णता:@escaping (डेटा?, URLResponse?, त्रुटि?) -> ()) { URLSession.shared.dataTask (साथ:url, पूर्णताहैंडलर:पूर्णता)। फिर से शुरू करें ()} func downloadImage (url से:URL) {getData (से:url) {डेटा, प्रतिक्रिया, गार्ड में त्रुटि डेटा =डेटा, त्रुटि ==nil अन्य {वापसी} DispatchQueue.main.async () {self.image =UIImage(डेटा:डेटा) } }}}

अब, हमारे व्यूडिडलोड (या कोई अन्य जगह जो आपको पसंद हो) में निम्नलिखित कोड जोड़ें।

 ओवरराइड func viewDidLoad() {super.viewDidLoad() url =URL दें (स्ट्रिंग:"https://static.inनिर्भर.co.uk/s3fs-public/thumbnails/image/2017/09/12/11/ naturo-monkey-selfie.jpg?w968h681") self.imgView.downloadImage(from:url!)}

जब हम इस कोड को अपने डिवाइस पर चलाते हैं, तो हमें निम्न परिणाम मिलते हैं।

मैं स्विफ्ट का उपयोग करके आईओएस डिवाइस पर यूआरएल द्वारा एक छवि कैसे लोड करूं?


  1. पिकासो का उपयोग करके एंड्रॉइड पर यूआरएल द्वारा इमेज व्यू कैसे लोड करें?

    यह उदाहरण दर्शाता है कि मैं पिकासो का उपयोग करके Android पर एक ImageView कैसे लोड करूं। चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें। चरण 2 - प्रोजेक्ट से ग्रैडल स्क्रिप्ट्स → बिल्ड.ग्रेडल (मॉड्यूल:ऐप) पर

  1. एक छवि कैसे लोड करें और केरस का उपयोग करके छवि कैसे दिखाएं?

    एक छवि लोड करने और केरस का उपयोग करके छवि दिखाने के लिए, हम load_image() . का उपयोग करेंगे एक छवि लोड करने की विधि और दिखाए जाने के लिए छवि का लक्ष्य आकार सेट करें। कदम load_img() का उपयोग करें आंकड़ा लोड करने की विधि। छवि का लक्ष्य आकार निर्धारित करें। आंकड़ा प्रदर्शित करने के लिए, दिखाएं () . का

  1. iTunes का उपयोग करके अपने iOS डिवाइस का बैकअप कैसे लें

    जैसा कि हर आईओएस डिवाइस मालिक जानता है, आप डिवाइस की सेटिंग्स का उपयोग करके आईक्लाउड पर जल्दी और आसानी से इसका बैकअप ले सकते हैं। लेकिन इसका बैकअप लेने का दूसरा तरीका यह है कि आईट्यून्स का उपयोग करके अपने कंप्यूटर पर एक एन्क्रिप्टेड बैकअप बनाया जाए। बैकअप विफल होने की स्थिति में यह एक और बीमा पॉलि