2012-02-21 7 views
0

У меня есть необходимость установить некоторые параметры перед выполнением segue, поэтому я должен использовать CUSTOM SEGUE, правильно? В этом случае я бы сделал переход с экрана на другой, анимированный, но у меня нет NavigationController (и я не хочу вставлять его!)Как выполнить анимированный пользовательский segue в раскадровке без NavigationController?

Возможно ли использовать навигационный контроллер и изменить виды с помощью пользовательского сегмента?

В альтернативном варианте есть возможность установить действие для кнопки и выполнить некоторые строки кода для выполнения сеанса? Я нашел это решение:

  • (IBAction) showDetailView: (идентификатор) отправитель {

    // код

    .....

    [собственного performSegueWithIdentifier: @ "ShowDetail «отправитель: отправитель];

}

но нужен контроллер navigtion ...

спасибо всем и извините за мой плохой Englis!

ответ

0

Когда вы создаете вас в разделе раскадровки, выберите «модальный» вместо «push» (пользовательский относится к третьему типу, который, как мне кажется, вам не нужен). Выберите segue и используйте инспектор атрибутов, чтобы присвоить ему имя. В моем примере кода я использую имя «editTitleBlock».

Чтобы задать свойство контроллера представления назначения (который будет контроллером вида модального) положить prepareForSegueMethod в первом контроллере представления, как это:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
if ([[segue identifier] isEqualToString:@"editTitleBlock"]) { 
     [[segue destinationViewController] setTitleFieldString: @""]; 
     [[segue destinationViewController] setAltitudeFieldString:currentLocation.localizedAltitudeString]; 
     [[segue destinationViewController] setLocationFieldString:currentLocation.localizedCoordinateString]; 
     [[segue destinationViewController] setAuthorString:userName]; 

    if ([[segue identifier] isEqualToString:@"cancel"]) { 
     // do nothing special 
    } 
} 

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

[self dismissModalViewController animated:YES]; 
+0

большое спасибо tj !!!! он отлично работает! Я стучал головой, начиная с 2 дней по этому вопросу ... –

+0

Не могли бы вы оказать мне услугу, чтобы принять ответ. –

+0

извините, я не практиковал сайт :) –

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