Ios 从ViewController切换到TabBarController的第一个选项卡
我已经创建了一个选项卡式应用程序。在第一个选项卡(ViewController+TableView)中,它显示了从数据库中获取的结果。我有一个按钮,可以打开另一个ViewController,用户可以在其中过滤结果(例如“城市”) 现在,如何使用segue返回到第一个选项卡页面?因为我需要传递参数以便对DB进行查询。如果我在该页面和第一个ViewController之间创建一个segue,它不会显示选项卡式菜单Ios 从ViewController切换到TabBarController的第一个选项卡,ios,swift,uitabbarcontroller,swift3,Ios,Swift,Uitabbarcontroller,Swift3,我已经创建了一个选项卡式应用程序。在第一个选项卡(ViewController+TableView)中,它显示了从数据库中获取的结果。我有一个按钮,可以打开另一个ViewController,用户可以在其中过滤结果(例如“城市”) 现在,如何使用segue返回到第一个选项卡页面?因为我需要传递参数以便对DB进行查询。如果我在该页面和第一个ViewController之间创建一个segue,它不会显示选项卡式菜单 谢谢大家。我想你们想要实现的是将数据从一个选项卡传递到另一个选项卡 “现在,我如何使
谢谢大家。我想你们想要实现的是将数据从一个选项卡传递到另一个选项卡 “现在,我如何使用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!!"
}
第二视图控制器:
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)
}
}
}
我希望这会有所帮助。我认为您想要实现的是将数据从一个选项卡传递到另一个选项卡 “现在,我如何使用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!!"
}
第二视图控制器:
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)
}
}
}
我希望它能帮上忙。你需要使用一个放松序列才能返回。你需要使用一个放松序列才能返回。这不是我的意思。。我使用了“放松”segue,它可以工作!:)谢谢你我不是这个意思。。我使用了“放松”segue,它可以工作!:)非常感谢。