问题是,我已经实现了从故事板自定义单元格的表视图。 每个单元都有一个按钮,选择按钮这意味着每当我按下一个按钮,它的图像变化。 例如,如果我按下的按钮与小区索引= 0,滚动表它的图像变化正确然而,当我发现其他按钮也改变了它们的图像! 问题是,从表中的索引路径和我花了很多时间试图没有结果修复它。 任何解决方案?
谢谢
static NSString *simpleTableIdentifier = @"cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:simpleTableIdentifier];
NSLog(@"index path inside cell = nil %i",(int)indexPath);
}
buttonObj=(UIButton *)[cell viewWithTag:40];
[buttonObj addTarget:self action:@selector(select:) forControlEvents:UIControlEventTouchDown];
return cell;
-(void) select:(id)sender{
UIButton *button=(UIButton *)sender;
UITableViewCell *clickedCell = (UITableViewCell*)[[sender superview] superview];
NSIndexPath *indexPathCell = [addFriendTableView indexPathForCell:clickedCell];
NSLog(@"indexPathCell %i",(int)indexPathCell.row);
Contacts* selectedContact = [contactsArray objectAtIndex:indexPathCell.row];
if([self image:button.imageView.image isEqualTo:[UIImage imageNamed:@"addFriend.png"]]==YES){
[button setImage:[UIImage imageNamed:@"addFriendPressed.png"] forState(UIControlStateNormal)];
[selectFriendsArray addObject:selectedContact];
counter++
}
else if( [self image:button.imageView.image isEqualTo:[UIImage imageNamed:@"addFriendPressed.png"]]==YES)
{
[button setImage:[UIImage imageNamed:@"addFriend.png"] forState:(UIControlStateNormal)];
counter--;
[selectFriendsArray removeObject:selectedContact];
}