2016-04-25 3 views
0

У меня есть простое приложение. Мой tableViews содержит несколько слов; Я отправляю данные в почтовом экране, и я хочу вернуться к первому tableView screen. Для этого я использую segue. Проблема в том, что каждый раз после публикации, нажав кнопку , открывается новая таблица tableView над почтовым экраном. Я хочу вернуться к оригиналу.iOS segue дважды экран

Table View Screen -> Post Screen -> New Table View Screen

Но я хочу

Таблица Vievscreen < -> Post Screen

+0

Вы ищете 'self.navigationController.popViewControllerAnimated (true)'? – JAL

+0

Я думаю, что моя проблема схожа с этой: http://stackoverflow.com/questions/26337304/view-appearing-twice-when-performing-segue – JRdsdUY

+0

Используйте размотку segue - http://stackoverflow.com/questions/ 36824524/programatically-define-a-new-navigation-controller-order-stack/36829034 # 36829034 – Paulw11

ответ

0

Нам нужно гораздо больше информации для того, что предусмотрено. Однако это может помочь вам начать правильно.

Если вы используете навигацию контроллер, это в вашем оприходования код вида:

navigationController!.popViewControllerAnimated(true) 

Если вы не используете navigationController, но вместо того, чтобы показывать вид модален, а затем использовать его в вашем просмотре размещения кода:

dismissViewControllerAnimated(true, completion: nil) 
+0

Я использую контроллер навигации, я попробовал его теперь, как «Table View -> Table View» после публикации данных. Если я удалю popViewController, это будет выглядеть так: «Экран просмотра таблицы ->« Экран окна »->« Экран нового экрана таблицы » – JRdsdUY

+0

У вас есть 2 контроллера вида, один с таблицей, другой - с некоторыми сообщениями. В вашем контроллере просмотра, где находятся данные сообщения.Скопируйте/вставьте свой код туда, где вы отклоняете контроллер вида. – oyalhi

+0

уверен, но я создаю segue, щелкнув правой кнопкой мыши и создав действие segue «show», поэтому в коде, связанном с segue, нет ничего. – JRdsdUY

0

Большинство segues создают новый экземпляр контроллера вида и отображают его поверх существующих контроллеров представлений.

Если вы добавляете контроллер вида в стек навигации с помощью нажатия, вы хотите сделать поп, как описано в комментарии JAL.

Если переход является модальным, вы хотите сделать dismissViewController: анимированный:

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

1

У меня была та же проблема. Теперь это разрешено. Пожалуйста, дайте мне знать, если это поможет.

У меня уже есть SEGUE, связанный с табличной клетки к другой точке зрения с именем DynamicSuperView

func tableView(_tableView: UITableView, didSelectRowAt indexPath: IndexPath) 
{ 
//Remove the below line from this function as it will perform segue. 
//performSegue(withIdentifier: "DynamicSegue", sender: self) 
} 


override func prepare(for segue: UIStoryboardSegue, sender: AnyObject?)  { 
// This will actually perform your segue 
var DestViewController = segue.destination as! DynamicSuperView 
let selectedRow = tableView.indexPathForSelectedRow?.row 
DestViewController.labelText = names[selectedRow!] 
} 

Надежда это помогает кому-то.

0

Я получаю тот же вопрос здесь, но я понимаю, что я только что сделал неправильно на контроль + щелчок, я вытащил из клетки, правильно должна быть от Tableview

Я надеюсь, что это поможет какой-то один

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