Удалить значение из NSMutableDictionary () в соответствии со значением Firebase - PullRequest
0 голосов
/ 14 октября 2018

Я определяю var dictImages = NSMutableDictionary(), чтобы хранить загруженные изображения и не загружать более одного раза, но когда я удаляю строку из tableView в Firebase, изображения скользят.Я понял, что проблема в dictImages.Единственный способ предотвратить эту ошибку - написать

dictImages.removeAllObjects()

перед загрузкой изображений, но в этом случае нет смысла хранить изображения, и это неэффективно.Мне нужно выяснить ранее сохраненный элемент и удалить его.

Этот код записан в cellForRowAt функции tableView:

if let image = self.dictImages.object(forKey: indexPath)
    {
        cell?.newsImg.image = image as? UIImage
    }
    else{
    storageRef.getData(maxSize: 1 * 1024 * 1024) { data, error in
        if let error = error {
            print(error)
        } else {
            if let data = data
            {
                let image = UIImage(data: data)
                self.dictImages.setObject(image, forKey: indexPath as NSCopying)
                cell?.newsImg.image = image
            }
        }
    }

Before removing row

After removing row

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...