Ваша переменная tingo
равна нулю, когда вы впервые создаете экземпляр ячейки. Выполнение cell.tingo = [NSString stringWithFormat:@"picsButtonImg.png"];
устанавливает его в значение, но тогда ваша клетка никогда не узнает, как сбросить изображение.
Переместите vintageScreen
в переменную вашего класса ячеек, затем переопределите ваш tingo
установщик, чтобы перезагрузить изображение, если вы хотите сохранить код, который у вас есть в cellForRowAtIndexPath:
CustomCell.h
@interface CustomCell : UITableViewCell {
UIImageView *vintageImage;
NSString *tingo;
}
@property (nonatomic, retain) UIImageView *vintageImage;
@property (nonatomic, retain) NSString *tingo;
@end
CustomCell.m
@implementation CustomCell
@synthesize vintageImage, tingo;
-(id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString*)reuseIdentifier {
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
[self initLabels];
[self addSubview:[self vintageScreen]];
}
return self;
}
-(UIImageView *)vintageScreen {
if(vintageScreen == nil) {
CGRect vintageScreenRect = CGRectMake(25, 0.0f, 100, 100);
[self setVintageScreen:[[[UIImageView alloc] initWithFrame:vintageScreenRect] autorelease]];
[vintageScreen setImage:[UIImage imageNamed:self.tingo]];
vintageScreen.opaque = YES;
}
return vintageScreen;
}
-(void)setTingo:(NSString *)newTingo {
[tingo release];
tingo = [newTingo retain];
[[self vintageScreen] setImage:[UIImage imageNamed:tingo]];
}