2012-05-29 3 views
0

Я создал подкласс UITableViewCell, который я использую с некоторыми UILabel. Теперь я хочу добавить флажок или кнопку в этот подкласс. После того, как пользователь нажмет эту кнопку, я хочу переместить выполнить segue и передать идентификатор или тег.Флажок/кнопка в подклассе UITableViewCell

В настоящее время это то, что у меня есть в подклассе. activityComplete является нажатие кнопки действия

- (IBAction)activityComplete:(id)sender { 
    NSLog(@"row: %d", activityComplete.tag); 
} 

В моем главном классе, я зову это в cellForRowAtIndexPath:

cell.activityComplete.tag = [activityId intValue]; 

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

Любая помощь будет оценена по достоинству.

ответ

1

Если у вас уже есть переход к сцене, к которой вы хотите перейти, даже если она подключена к виду, отличному от вашей кнопки, убедитесь, что вы дали segue идентификатор в раскадровке. Затем вы можете вызвать метод performSegueWithIdentifier: sender: method, используя идентификатор, который вы указали для segue, и используя кнопку в качестве отправителя.

Это вызовет сцену, как если бы вы сразу подключили segue.

+0

Я попытался позвонить [self performSegueWithIdentifier: @ "activityCompleteSegue" отправитель: self]; Из моего класса я получаю сообщение об ошибке «No visible @interface» для «ActivityCell» объявляет селектор «performSegueWithIdentifier: sender» – Keith

+0

Вам нужно будет убедиться, что вызов кнопки возвращается к UITableViewController, а не UITableViewCell. Функция performSeguesWithIdentifier существует только в UIViewController и является дочерней. – Rob

+0

Я думаю, что это главная проблема, с которой я сталкиваюсь. Я не знаю, как это сделать. – Keith

Смежные вопросы