UITutton在UITableView中,选择器应用于几个按钮

时间:2012-12-13 15:32:50

标签: ios uiimageview uibutton selector

我目前正在UITableView工作,每个单元格都包含一个背景中具有特定UIImage的按钮。我想在单元格中单击按钮时更改此图像。

我有这个代码,工作得很好但是当我点击一个按钮时,几个按钮被修改 - 每5个按钮,不知道为什么。这是代码:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    [myCell.favorite addTarget:self action:@selector(pressed_fav:) forControlEvents:UIControlEventTouchUpInside];

    return myCell;
}

- (void)pressed_fav:(id)sender
{
    UIButton *myButton = sender;

    [myButton setBackgroundImage:[UIImage imageNamed:@"star.png"] forState:UIControlStateNormal];
}

myCell是自定义单元格的一个实例,其中包含指向IBOutlet的{​​{1}}'收藏'。

2 个答案:

答案 0 :(得分:1)

因为UITableView重新使用了单元格。 您必须在cellForRowAtIndexPath方法中使用某些逻辑来标识按钮的图像。

答案 1 :(得分:0)

非常感谢你!

实际上,当我删除该行时:

myCell = [tableView dequeueReusableCellWithIdentifier:@"cinemaCell"];

它不显示单元格(它已经很好地分配和初始化)。