Изменить название кнопки в правильной ячейке

Я пытаюсь изменить название кнопки в динамической ячейке, если эта кнопка была нажата, но я застрял:

У меня есть:

- (********)buttonWasPressed:(id)sender
{ static NSString *CellIdentifier = @"Cell"; NSIndexPath *indexPath = [self.tableView indexPathForCell:(UITableViewCell *)[[sender superview] superview]]; ********** row = indexPath.row; NSLog(@"row::%d",row); ResultsCell *cell = [self.tableView dequeueReusableCellWithIdentifier:CellIdentifier cellForRowAtIndexPath:indexPath]; [cell.favoriteButton setTitle:@"favorited" forState:UIControlStateNormal];
}

и он работает до моего NSLog(@"row::%d",row); но я не уверен, как правильно получить вторую часть? Какие-либо предложения?

2 ответа

Это то, что кнопка "состояние". Или даже состояние ячейки. Просто потому, что для них может быть много кнопок и разных заголовков, и вы можете настроить каждую кнопку, как это

[yourButton setTitle:@"Add to favourite" forState:UIControlStateDefault];
[yourButton setTitle:@"Favourite" forState:UIControlStateSelected];

Затем просто установите необходимое состояние:

- (********)buttonWasPressed:(*********)sender { sender.selected = !sender.selected; // Toggle "selected" state
}


Попробуйте что-то вроде этого:

******** *btn = (******** *)sender;
[btn setTitle:@"favorited" forState:UIControlStateNormal];

Ссылка на кнопку, которая была нажата, отправляется в ваш метод. Вам просто нужно использовать его!

licensed under cc by-sa 3.0 with attribution.