我使用nib文件创建了一个UIView。并将其设置为表视图标题视图。在这个视图中我有一个按钮。我试图更改按钮的图像,但没有任何变化。
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
if (section == 0) {
HealthPlanHeaderView *view = (HealthPlanHeaderView *)[[[NSBundle mainBundle] loadNibNamed:NSStringFromClass([HealthPlanHeaderView class]) owner:self options:nil] firstObject];
[view.addButton addTarget:self action:@selector(editFood) forControlEvents:UIControlEventTouchUpInside];
self.healthPlanHeaderView = view;
return view;
}else {
return nil;
}
}
- (void)editFood {
self.healthEditing = !self.healthEditing;
UIImage *image = self.healthEditing ? [UIImage imageNamed:@"finish"] : [UIImage imageNamed:@"edit-button"];
[self.healthPlanHeaderView.addButton setImage:image forState:UIControlStateNormal];
}
我注意到按钮图像确实设置了,但按钮不会显示新设置的图像,它保持不变。
答案 0 :(得分:1)
也许,你只需要调用tableView的reloadData来刷新它。