Обновите UIImageView в ячейке UITableView с прозрачностью - PullRequest
0 голосов
/ 23 августа 2011

У меня есть класс imageview, который подклассирует класс UIImageView, он отображается в UITableView, который dequeueReusableCellWithIdentifier.

@interface ImageView : UIImageView {
.
.
.

когда пришло время обновить изображение с одного изображения на другое, само обновление работает

[self setImage:[UIImage imageWithContentsOfFile:[self resourcesDir:url]]];

но мои изображения прозрачные в формате PNG (с теми же размерами), поэтому часть видимого изображения видна под обновленным (так как сами ячейки используются повторно)

Я пытался различными способами сделать так, чтобы imageView сначала прояснился, но ни один из них не работает, вот что я попробовал:

self.image = nil;

[self setBackgroundColor:[UIColor clearColor]]; 

[self setNeedsDisplay];

[self performSelectorOnMainThread:@selector(setNeedsDisplay) withObject:nil waitUntilDone:NO];

Есть идеи?

1 Ответ

1 голос
/ 24 августа 2011

Убедитесь, что вы НЕ используете новый экземпляр UIImageView. Это должен быть тот же экземпляр, чтобы ваш код работал правильно. Ваша идея звучит так, как будто она должна работать правильно.

...