我正在尝试使用Xcode 4.2故事板创建一些单元格,并使用Interface Builder创建自定义单元格。我把单元格设置得很好,我有一个按钮,当我按下按钮时,我试图拥有它,图像会改变,但它似乎不起作用。这就是我所拥有的
- (IBAction)sendToFavorites:(id)sender {
UITableViewCell *cell = (UITableViewCell *)[[sender superview] superview];
int row = [feedTableView indexPathForCell:cell].row;
NSLog(@"\"%@\" is FAVORITED", [[_allEntries objectAtIndex:row] articleTitle]);
if ([[_allEntries objectAtIndex:row] isFavorited]) {
NSLog(@"Unfavorite");
[[_allEntries objectAtIndex:row] setFavorite:NO];
[[sender imageView] setImage:[UIImage imageNamed:@"StarEmpty"]];
} else {
NSLog(@"Favorite");
[[_allEntries objectAtIndex:row] setFavorite:YES];
[[sender imageView] setImage:[UIImage imageNamed:@"StarFilled"]];
}
}
任何帮助都将不胜感激。
答案 0 :(得分:0)
您可以尝试刷新表格视图的内容。即,在设置与单元格关联的新图像后,在表格视图上调用reloadData
。
据我所知,您正在尝试直接修改单元格内容。相反,这应该通过控制重绘表的dequeueReusableCellWithIdentifier
机制来实现。因此,只需:修改数据源,然后重绘表格。
希望这有帮助。
答案 1 :(得分:0)
想出来。
[sender setImage:[UIImage imageNamed:@"StarEmpty"] forState:UIControlStateNormal];
不能单独设置,必须将其设置为状态,是否为突出显示,正常等。