2015-02-14 10 views
6

से छवि फ़ाइल नाम कैसे प्राप्त करें I छवि फ़ाइल नाम प्राप्त करना चाहते हैं जो वर्तमान में UIImageView पर प्रदर्शित होता है। मैं इस प्रकार यह प्राप्त करने की कोशिश:स्विफ्ट, वर्तमान में UIImageView

let currentImage = alien.image // !alien is my image view 
println(currentImage?.description) 

लेकिन यह प्रिंट:

Optional("<UIImage: 0x7fa61944c3d0>") 
+1

मुझे नहीं लगता कि आप फ़ाइल नाम का मतलब कर सकते हैं। – Unheilig

+0

@Unheilig हाँ वास्तव में मेरा मतलब फ़ाइल का नाम था। कुछ शोध के बाद मुझे एहसास हुआ कि मैं ऐसा नहीं कर सका जैसा आपने कहा .. – semirturgay

उत्तर

9

आप ऐसा नहीं कर सकते। न तो तेजी से और न ही उद्देश्य-सी।

ऐसा करने के लिए आप जिस डेटा को पुनर्प्राप्त करना चाहते हैं उसे स्टोर करना है। यही है ... कहीं नाम स्टोर करें और छवि को लोड करने के लिए इसका इस्तेमाल करें। कोई और रास्ता नही।

तो imageName जैसी संपत्ति बनाएं और फिर छवि को लोड करने के लिए इसका उपयोग करें।

+0

हम किस चर का उपयोग कर सकते हैं ताकि छवि का एक अद्वितीय नाम हो। फिलहाल मैं एक स्थिर छवि नाम ("tempImage") संग्रहीत करने के साथ परीक्षण कर रहा हूं और छवि हर बार ओवरराइट की जाती है। लेकिन अगर हमें छवि का नाम नहीं मिल रहा है, तो मैं छवि नाम कोड के लिए अब क्या उपयोग कर सकता हूं: 'saveImage (चयनित छवि, पथ: fileInDocumentsDirectory ("tempImage")) ' – alex

+0

ठीक है मैं छवियों के लिए // // फ़ंक्शन का उपयोग करता हूं func uniqueFilename() -> स्ट्रिंग { यूयूआईडी = एनएसयूयूआईडी() दें। यूयूआईडीस्ट्रिंग प्रिंट (यूयूआईडी) यूयूआईडी } वापस लौटें – alex

3

आसपास के काम के रूप में, जिन छवियों को मुझे बाद में संदर्भित करने की आवश्यकता है, मैं छवि नाम को स्टोर करने के लिए बहाली आईडी का उपयोग करता हूं।

मैंने इस तरह से बहाली आईडी का उपयोग किया ताकि मैं एक ही @IBAction पर एकाधिक बटन कनेक्ट कर सकूं और उन्हें बहाली आईडी में संग्रहीत छवि नाम के आधार पर पहचान सकूं और जो दिखाना चाहता हूं या छुपाएं, उसके बारे में तर्क चलाएं।

बेहतर तरीके हो सकते हैं लेकिन यह चुटकी में काम करता है।

मैंने छवि का नाम बहाली आईडी के रूप में रखा है।

यहाँ

वह जगह है जहाँ मैं छवि के लिए फ़ाइल को नामित ..

enter image description here

और मैं सिर्फ इतना है कि कॉपी और बहाली आईडी के रूप में यह में डाल दिया।

(ध्यान दें:। कि नहीं है क्या इस के लिए के रूप में यह वास्तव में राज्य संदर्भ अनुरूपण के लिए है इस्तेमाल किया जा करने का इरादा था, लेकिन अगर यह है कि आपके विचार के प्रयोजन के लिए प्रासंगिक नहीं है, तो यह ठीक काम करना चाहिए)

enter image description here

बटन चयनित होने पर कोड में संदर्भित।

//Connected to several onboarding buttons. 
@IBAction func onBoardingButton(sender: UIButton) { 

    println(sender.restorationIdentifier) 



} 

आरआईडी मुद्रित।

enter image description here


आप भी अपनी छवियों को टैग और टैग के माध्यम से उन छवियों के संदर्भ में रख सकते हैं।

enter image description here

और संदर्भ बस के रूप में आसान है।

@IBAction func onBoardingButton(sender: UIButton) { 

    println(sender.restorationIdentifier!) 
    println(sender.tag) 


} 

जैसे हम विचार कर सकते हैं क्या फ़ाइल imageView को भरने के लिए इस्तेमाल किया गया था (है कि मैं के बारे में पता है और आधारित एक छोटे से अपने आप को चारों ओर देख पर) के लिए एक दृश्य के लिए कड़ी मेहनत संदर्भ संलग्न ऐसा प्रतीत नहीं होता है (छवि , बटन, आदि ..) मुझे कनेक्शन कोड पक्ष बनाने और यह पता लगाने की अनुमति देता है कि कौन सी छवि (या मेरे केस बटन में) का उपयोग किया जा रहा है।