在我的应用程序中,我面临一个非常奇怪的问题。我试图解决它几个小时,但到目前为止找不到问题所在。
好吧,我有一个带有自定义单元格的表格视图。每个单元格都有一个按钮。它就像一个空盒子。按下按钮时,我想更改该按钮的相关单元格图像。实际上我成功地做到了,但不知何故,其他一些单元格的按钮图像也在改变,我不知道为什么。这是我的代码:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"cell";
CustomCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
//create new cell
cell = [[CustomCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
[cell.tickButton setTag:indexPath.row];
[cell.tickButton addTarget:self action:@selector(buttonWasPressed:)forControlEvents:UIControlEventTouchUpInside];
//cell has 2 label so I filled them with the contents of my object array that part is working with no problem
cell.leftLabel.text = [NSString stringWithFormat:@"%@", [[contacts objectAtIndex:indexPath.row]name]];
cell.rightLabel.text = [NSString stringWithFormat:@"%@", [[contacts objectAtIndex:indexPath.row]email]];
return cell;
}
在我的 buttonWasPressed 方法中,我只是这样做:
-(IBAction)buttonWasPressed:(id)sender
{
UIButton *button = (UIButton *)sender;
[button setImage:[UIImage imageNamed:@"ticck.jpeg"] forState:UIControlStateNormal];
}
正如我之前所说,它可以工作,但也会更改一些其他按钮图像,而且当我向下滚动并返回初始位置时,我看到一些按钮图像已更改。