2015-07-25 4 views
0

У меня есть контроллер вида, после нажатия кнопки. Я хочу, чтобы он разобрался с исходным контроллером табличного представления, а затем разрешил ему переходить в другой контроллер представления. Я не перехожу непосредственно к новому контроллеру представления, потому что я хочу, чтобы при нажатии кнопки «Назад» он возвращался к исходному контроллеру табличного представления. Но когда я делаю это он загружает контроллер представления, где он должен до конца, но сразу после того, что он возвращает непосредственно к контроллеру представления исходной таблицыВозврат к оригинальному виду после segue

Это моя установка в раскадровке: http://imgur.com/dcvvxi5

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

self.performSegueWithIdentifier("unwindChooseHome", sender: nil) 

И этот код внутри оригинального контроллера табличного:

@IBAction func unwindChooseHome(segue: UIStoryboardSegue) { 
     self.performSegueWithIdentifier("destination", sender: nil) 
} 

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

Заранее спасибо :)

ответ

0

Я полагаю, что проблема заключается в том, что вы запуская «пункт назначения» непосредственно перейти до завершения размотки Segue.

Вместо того, чтобы запускать «пункт назначения» непосредственно внутри метода разматывания, попробуйте установить флажок на исходном контроллере представления, который затем можно проверить в viewDidAppear: и вызвать сегу в этой точке.

+0

Спасибо! Ваше предложение сработало, я добавил свойство, которое говорит, что он или нет, он должен перейти к месту назначения или нет. Это значение равно true, когда происходит размотка segue, а затем внутри ViewDidAppear он вызывает performSegueWithIdentifier, потому что это правда. – clickbeast

+0

Добро пожаловать! Рад слышать, что это сработало. –