在维护用户输入数据的同时更改视图控制器
Change View Controllers while maintaining users input data
在将所有文本字段数据和分段控制器选择保持在用户选择的状态的同时,在视图控制器之间切换的最佳方法是什么?最好在 swift.
我需要从 1 个视图控制器更改为其他 3 个视图控制器之一,然后总是 return 更改为我的主视图控制器,然后再选择要转到的下一个控制器。我发现使用 segues 似乎重置了我的选择。有没有办法在控制器之间导航并填充文本字段?用户选择的操作会影响主页上的某些计算。我希望用户能够来回添加和更改他们在每个页面中放置的内容,而无需重新键入每个框。
如有任何建议,我将不胜感激
谢谢
您可以将您的数据保存到 NSUserDefaults
中,您可以在任何地方获取该数据,这里是适合您的简单示例。
你可以这样保存数据:
NSUserDefaults().setObject("your text from the text field", forKey: "YouKeyForThat")
之后,您可以像这样从任何 viewController 获取数据:
let loadedString = NSUserDefaults().stringForKey("YouKeyForThat") ?? ""
在您的情况下,您可以加载它并使用磁盘中的信息在 viewDidLoad
方法中填充 textfield
。
myTextField.text = loadedString
在将所有文本字段数据和分段控制器选择保持在用户选择的状态的同时,在视图控制器之间切换的最佳方法是什么?最好在 swift.
我需要从 1 个视图控制器更改为其他 3 个视图控制器之一,然后总是 return 更改为我的主视图控制器,然后再选择要转到的下一个控制器。我发现使用 segues 似乎重置了我的选择。有没有办法在控制器之间导航并填充文本字段?用户选择的操作会影响主页上的某些计算。我希望用户能够来回添加和更改他们在每个页面中放置的内容,而无需重新键入每个框。
如有任何建议,我将不胜感激
谢谢
您可以将您的数据保存到 NSUserDefaults
中,您可以在任何地方获取该数据,这里是适合您的简单示例。
你可以这样保存数据:
NSUserDefaults().setObject("your text from the text field", forKey: "YouKeyForThat")
之后,您可以像这样从任何 viewController 获取数据:
let loadedString = NSUserDefaults().stringForKey("YouKeyForThat") ?? ""
在您的情况下,您可以加载它并使用磁盘中的信息在 viewDidLoad
方法中填充 textfield
。
myTextField.text = loadedString