我该怎么做?
如果我这样设置,它的效果非常好:
if(indexPath.row == lastSelectedCell) {
// last cell
TWMainViewExpandedCell *cell = (TWMainViewExpandedCell *)[tableView dequeueReusableCellWithIdentifier:ExpandedCellIdentifier];
if (cell == nil) {
cell = (TWMainViewExpandedCell *)[[[NSBundle mainBundle] loadNibNamed:@"MainViewExpandedCell" owner:self options:nil] objectAtIndex:0];
_circleImage.image = [UIImage imageNamed:@"circle"];
}
return cell;
}
但是,当尝试从这里设置相同的图像属性时(这是UITableViewCell的子类,顺便说一下):
@implementation TWMainViewExpandedCell
-(id)initWithCoder:(NSCoder *)aDecoder
{
NSLog(@"initWithCoder");
self = [super initWithCoder: aDecoder];
if (self) {
_circleImage.image = [UIImage imageNamed:@"circle"];
}
return self;
}
这最后一个不起作用。为什么?我知道正在调用initWithCoder。
答案 0 :(得分:1)
调用circleImage
时,您的initWithCoder:
电子插座尚未连接,因此它仍然是nil
。在awakeFromNib
中执行此操作。