2016-11-12 4 views
1

Я создал приложение с вкладками. На первой вкладке (ViewController + TableView) отображаются результаты, полученные из БД. У меня есть кнопка, которая открывает другой ViewController, в котором пользователь может фильтровать результаты (например, для «города»).Segue от ViewController до первой вкладки TabBarController

Теперь, как я могу вернуться на первую вкладку с помощью segue? Потому что мне нужно передать параметры, чтобы выполнить запрос к БД. Если я создаю segue между этой страницей и первым ViewController, она не отображает меню с вкладками.

Спасибо, ребята.

+1

Вам нужно использовать разматывание, чтобы вернуться назад – Paulw11

ответ

0

Я предполагаю, что вы пытаетесь передать данные с одной вкладки на другую.

«Теперь, как я могу вернуться к вкладкам страницы Первого с Segue?Потому что мне нужно передать параметры для того, чтобы сделать запрос к БД.»

На самом деле, вы дон «т придется выполнить переход для передачи данных, вместо этого вы можете сделать следующее:

// somewhere in your code when you need to pass data to another tab viewController: 
if let tabBarController = tabBarController { 
    let secondTabViewController = tabBarController.viewControllers![1] as! SecondViewController 
    // let's assume that you want to pass a string 
    secondTabViewController.str = "my str!!" 
} 

SecondViewController:

class SecondViewController: UIViewController { 
    // here is the string that had been passed from the first tab viewController: 
    var str:String? 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     // note that the output is: "Optional("my str!!")" 
     print(str) 

     // do optional binding: 
     if let unwrappedStr = str { 
      // output is: "my str!!" 
      print(unwrappedStr) 
     } 
    } 
} 

Надеюсь, это помогло.

+0

Это было не то, что я имею в виду .. Я использовал Unwind segue, и он работает! :) Спасибо –

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