Согласно вашему мнению, вы уже создали свою собственную кнопку и установили ее как ячейку accessoryView
.
При создании кнопки, установите его изображение для выбранного состояния к вашему галочка изображения:
[button setImage:checkmarkImage forState:UIControlStateSelected];
Когда кнопка прослушиваются, установите его состояние в выбранный таким образом он будет показывать галочки:
- (IBAction)buttonWasTapped:(id)sender event:(UIEvent *)event {
UIButton *button = sender;
button.selected = YES;
Затем отключить взаимодействия с пользователем, так что пользователь не может сделать ничего другого во время задержки:
[[UIApplication sharedApplication] beginIgnoringInteractionEvents];
Получить путь индекса для ячейки, содержащей прикоснулся кнопку:
UITouch *touch = [[event touchesForView:button] anyObject];
NSIndexPath *indexPath = [tableView indexPathForRowAtPoint:
[touch locationInView:tableView]];
Наконец, запланировать блок для запуска после задержки. В блоке повторного включения взаимодействия с пользователем и отправить себе сообщение, содержащее путь индекса:
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 0.5 * NSEC_PER_SEC),
dispatch_get_main_queue(),
^{
[[UIApplication sharedApplication] endIgnoringInteractionEvents];
[self accessoryButtonTappedForRowAtIndexPath:indexPath];
});
}
@GabrielePetronella Я уже в состоянии настроить кнопку так, что она имеет пустой круг. Я следил за этой [ссылкой] (http://iphonedevsdk.com/forum/iphone-sdk-development/71147-change-disclosure-button.html) –
Что должно произойти, если пользователь удаляет что-то еще во время этой «задержки около половины Второй"? –
@robmayoff ничего действительно. Я думал о задержке, чтобы иметь некоторое время, чтобы пользователь мог распознать изменение изображения. –