我已经创建了一个标签式应用程序。在第一个选项卡(ViewController + TableView)中,它显示了从DB获取的结果。我有一个按钮可以打开另一个ViewController,用户可以在其中过滤结果(例如,#34; city")。
现在,如何返回带有segue的第一个标签页?因为我需要传递参数才能对DB进行查询。如果我在这个页面和第一个ViewController之间创建一个segue,它就不会显示标签菜单。
谢谢你们。
答案 0 :(得分:0)
我认为你想要实现的是将数据从一个标签传递到另一个标签。
"现在,如何返回带有segue的第一个标签页? 因为我需要传递参数才能对DB进行查询。 强>"
实际上,您不必执行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)
}
}
}
我希望它有所帮助。