2016-10-05 19 views
10

मेरे पास SDWebImage के माध्यम से मेरे ऐप पर लोड की गई सभी छवियां हैं I डाउनलोडिंग और कैशिंग बहुत अच्छा काम करता है, लेकिन मैं एक बटन बनाना चाहता था जो पूरे ऐप में सभी कैश की गई छवियों को साफ़ कर सके।SDWebImage से लोड की गई सभी कैश की गई छवियों को कैसे साफ़ करें?

मेरे पास मेरे टैब बार दृश्यों में से एक पर UIButton के रूप में "साफ़ कैश" बटन है। जब यह बटन टैप किया जाता है, तो मैं इसे कैसे बना सकता हूं, सभी कैश की गई छवियां हटा दी जाती हैं और फिर से डाउनलोड करने की आवश्यकता होती है?

स्विफ्ट का उपयोग करना।

धन्यवाद!

उत्तर

24

आप पूरी तरह से स्पष्ट कैश करना चाहते हैं निम्न करें:

Obj सी:

- (IBAction)clearCache:(id)sender { 
    [[SDImageCache sharedImageCache]clearMemory]; 
    [[SDImageCache sharedImageCache]clearDisk]; 
} 

स्विफ्ट:

import SDWebImage 

@IBAction func clearCache(sender: UIButton) { 
    SDImageCache.sharedImageCache().clearMemory() 
    SDImageCache.sharedImageCache().clearDisk() 
} 

स्विफ्ट 3.0

import SDWebImage 

@IBAction func clearCache(sender: UIButton) { 
    SDImageCache.shared().clearMemory() 
    SDImageCache.shared().clearDisk() 
} 
+0

प्रतिक्रिया के लिए धन्यवाद। मैं इसे यूआईबटन से कैसे जोड़ूं? क्या यह एक आउटलेट के माध्यम से होगा? – Miles

+0

इसे आजमाएं। धन्यवाद! – Miles

+0

अच्छा काम करता है, धन्यवाद! – Miles

0

इस प्रयास करें:

@IBAction func actClearCache(sender:AnyObject) { 

    let objCache = SDImageCache.sharedImageCache() 
    objCache.clearMemory() 
    objCache.cleanDisk() 

} 
+0

प्रतिक्रिया के लिए धन्यवाद। मैं इसे यूआईबटन से कैसे जोड़ सकता हूं? क्या यह एक आउटलेट के माध्यम से होगा? – Miles

+0

आईबीएक्शन का उपयोग करें और कनेक्ट करें! अद्यतन उत्तर देखें। –

+0

समझ गया, धन्यवाद! मुझे एक त्रुटि मिल रही है जो कहती है: अनसुलझा पहचानकर्ता 'SDImageCache' का उपयोग करें। क्या मुझे इसे अपने ब्रिजिंग हेडर में आयात करने की आवश्यकता होगी? – Miles

संबंधित मुद्दे