我目前已经有了一个应用程序,你可以在一个视图中输入一个东西,并且它出现在另一个视图中。我应该简单地通过将信息发送到数据库然后在另一个视图上检索它或者是否有直接传递这些信息的方法来做到这一点?iOS从不同的视图控制器传递信息swift
回答
从一个视图控制器发送信息到另一个是塞格斯的最好方法。
您可以使用它像这样:
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if(segue.identifier == "yourIdentifierInStoryboard") {
let yourNextViewController = (segue.destinationViewController as yourNextViewControllerClass)
yourNextViewController.value = yourValue
而在你yourNextViewController类。从DestinationViewController回
self.performSegueWithIdentifier("yourIdentifierInStoryboard", sender: self)
设定值的主(前)的ViewController
实现一个协议,例如:
class yourNextViewControllerClass {
var value:Int! // or whatever
你也可以以编程方式调用此创建一个名为protocol.swift的文件。
protocol changeUserValueDelegate {
func changeUser(toValue:Bool)
}
2.设置委托在你的第二个查看
class yourNextViewControllerClass {
var delegate:changeUserValueDelegate?
设置委托负载(prepareForSegue)
if(segue.identifier == "yourIdentifierInStoryboard") {
var yourNextViewController = (segue.destinationViewController as yourNextViewControllerClass)
yourNextViewController.delegate = self
4.附加功能到FirstViewController
func changeUser(toValue:Bool) {
self.currentUserValue = toValue
}
5.呼叫从自己的SecondViewController此功能
delegate?.changeUser(true)
6.将委托你FirstViewController
class FirstViewController: UIViewController, ChangeUserValueDelegate {
感谢您的详细解答。有没有指向你可以在这里发布的教程的链接? – tryingtolearn
这是我在另一个问题上的答案。但有很多教程:https://www.raywenderlich.com/113394/storyboards-tutorial-in-ios-9-part-2 – derdida
如果你是编程这样做,那么你可以给您的目标视图控制器是故事板中的标识符,当您移动到Viewcontroller时,使用此ID获取此视图控制器entifier和属性添加到第二个视图控制器让你写
文本例子:
let storyBoard = UIStoryboard(name: "Main", bundle: NSBundle.mainBundle())
let secondViewController = storyBoard.instantiateViewControllerWithIdentifier("secondViewControllerIdentifier") as! UserBasicInfoViewController
secondViewController.Text = self.textField.text
self.navigationController?.pushViewController(userProfile, animated: true)
或者
self.presentViewController(secondViewController, animated: true, completion: nil)
- 1. 如何在两个不同的视图控制器之间传递信息?
- 2. 在两个视图控制器之间传递数据Swift IOS
- 3. Swift 3.0使用Segue在视图控制器之间传递信息
- 4. 在视图之间传递Facebook用户信息。 iOS Swift Xcode 6
- 5. 如何在3个视图控制器之间传递信息?
- 6. 将信息传递到新视图控制器
- 7. 将进度栏信息传递给视图控制器
- 8. xcode/ios:以编程方式推视图控制器并传递行信息
- 9. 传递视图控制器
- 10. 从视图控制器传递字典
- 11. 如何将信息从appDelegate传递到UINavigationcontroller中的某个视图控制器
- 12. 技术信息传递给控制器
- 13. 将数据从视图传递到Cakephp中的不同视图控制器
- 14. Swift 3 - 从不同的视图控制器过滤器tableview
- 15. 当前视图控制器内的详细信息视图控制器中的详细信息视图控制器在swift 3
- 16. 在swift中处理表视图控制器的详细信息
- 17. 将数据从一个视图控制器传递到另一个视图控制器; iOS <= 4 vs iOS 5
- 18. 从当前视图控制器的子视图控制器导航到详细信息视图控制器
- 19. iOS - 如何在Swift的不同视图控制器中使用小视图
- 20. 传递的UITextField文本的UILabel不同的视图控制器
- 21. ios swift - 关闭导航控制器的根视图控制器
- 22. Xcode将数据从视图控制器传递到另一个视图控制器在不同的故事板
- 23. 从一个表视图控制器传递json id到swift 3中的另一个表视图控制器3
- 24. 在swift中从不同的视图控制器调用函数
- 25. Swift:从不同的视图控制器调用函数
- 26. 在不同的视图控制器之间传递数据
- 27. 无法在swift中传递视图控制器之间的值
- 28. 将数据从视图控制器传递到另一个视图控制器
- 29. 将数据从表格视图控制器传递到视图控制器
- 30. 从表格视图控制器传递值到视图控制器
@EricAya谢谢你的提示!我会确保这不会发生。 – tryingtolearn