У меня есть пользовательский TableViewCell, который имеет статус, который должен оставаться постоянным. Моя проблема заключается в том, как связать tableView с пользовательской ячейкой, например, когда я храню объект, когда пользователь нажимает кнопку, мне нужно знать, в какой строке TableView пользователь нажал кнопку, и мне нужно иметь возможность передать ее ключ из TableView для использования для ключа NSUserDefaults. Как мне это сделать?Пользовательский TableViewCell - Общение с TableViewController
- (IBAction)flagLectureButtonPressed:(UIButton *)sender
{
NSLog(@"sender %@",sender.description);
UIImage* selectedButton=[UIImage imageNamed:@"checkmarkSelected.png"];
UIImage* unselectedButton=[UIImage imageNamed:@"checkmark.png"];
if (sender.currentImage == unselectedButton) {
[sender setSelected:YES];
[sender setImage:selectedButton forState:UIControlStateNormal];
[self saveflagButtonState:kButtonFlagged forButton:sender];
} else {
[sender setSelected:NO];
[sender setImage:unselectedButton forState:UIControlStateNormal];
[self saveflagButtonState:kButtonNormal forButton:sender];
}
}
- (void) saveflagButtonState:(ButtonState)state forButton: (UIButton *)sender
{
static int i = 0;
NSString *object;
if (state == kButtonFlagged) {
object = @"flaged";
} else if (state == kButtonNormal) {
object = @"normal";
}
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:object forKey:@"key"];
[defaults synchronize];
}
- (void) setTagLectureButton:(UIButton *)tagLectureButton
{
UIImage* selectedButton=[UIImage imageNamed:@"checkmarkSelected.png"];
UIImage* unselectedButton=[UIImage imageNamed:@"checkmark.png"];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *buttonIsTaged = [defaults stringForKey:@"key"];
if (buttonIsTaged) {
[tagLectureButton setImage:selectedButton forState:UIControlStateNormal];
} else {
[tagLectureButton setImage:unselectedButton forState:UIControlStateNormal];
}
}
@end
Было бы здорово wi й пример обратного вызова, который вы имели в виду - я совершенно новичок в этом. –
Отлично! Большое спасибо! –