раскадровка переходит от ячейки таблицы к кнопке подробного раскрытия информации

Я хочу перейти от ячейки таблицы к двум разным контроллерам представления, если щелкнуть в ячейке или щелкнуть кнопку подробного раскрытия ячеек.

Если я перетаскиваю второй переход, удерживая клавишу Ctrl, первый удаляется. Что я делаю неправильно?

Tnx слюда


person mica    schedule 29.01.2012    source источник


Ответы (1)


Я не думаю, что вы можете связать конкретную кнопку раскрытия подробностей с переходом. Мои раскадровки чрезвычайно программны, потому что я использую много пользовательских CGRect и т. Д.

поэтому я склонен использовать что-то вроде этого:

-(void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath
{
    [self performSegueWithIdentifier:@"ViewControllerIdentifer" sender:self];
}

для справки, это очень хороший пример проекта по раскадровке и табличному представлению. внизу есть ссылка на проект.

http://www.raywenderlich.com/5191/beginning-storyboards-in-ios-5-part-2

person DJPlayer    schedule 29.01.2012
comment
Tnx, я надеюсь, что прочитал статью правильно, но мне непонятно, как создается переход с идентификатором: @ViewControllerIdentifer. - person mica; 29.01.2012
comment
если вы зайдете в конструктор интерфейса и посмотрите на контроллер представления, под заголовком есть область для ввода идентификатора (вкладка 4 - это Xcode 4). просто введите его там. Чем сложнее ваш код, тем чаще вы будете звонить, используя идентификатор, а не переход по ссылке в IB. - person DJPlayer; 30.01.2012
comment
@mica Я думаю, что правильный ответ заключается в том, что вы перетаскиваете переход из табличного представления к следующему контроллеру, а не из ячейки таблицы, — вы делаете это, выбирая контроллер табличного представления в навигаторе слева от раскадровки. Это дает вам переход, который вы можете запускать программно, как указано выше, но который не будет запускаться простым прикосновением к ячейке. - person Rhubarb; 27.12.2012
comment
Я управляю перетаскиванием от индикатора раскрытия деталей к контроллеру представления в раскадровке, и переход запускается автоматически (т. е. нет необходимости вызывать performSegueWithIdentifier:). - person wcochran; 22.05.2013