如何在打开时将数据从父视图传递给子视图?
我想在呈现 modalView 时将数据(字符串数组)从父视图加载到子视图中的一组 UITextField 中。
我知道如何从孩子传递到父母,而且我确信从另一个方向传递会更容易,但我不知道如何做。
更新:更新被删除,因为我发现了问题(模态视图的双重释放)
I want to load data (an array of strings) from the parent view into a set of UITextFields in the child view upon presenting the modalView.
I know how to pass from child to parent, and I'm sure it's even easier to go the other way, but I don't know how.
UPDATE: Update removed because I found the problem (double releasing of modal view)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
重写子视图控制器的 init 方法。
然后在父级中:
Override the init method for the child view controller.
Then in the parent:
有两种方法可以做到这一点:
1.按照 Matt 的建议重写 init 方法
2.在子类中创建字段并将这些值传递到文本字段。
然后在父类中:
Two ways you could do it:
1.Override the init method as Matt suggests
2.Create fields in your child class and pass those values to your text field.
Then in the parent class:
如果您想变得非常奇特,您可以为您的子视图创建一个委托。
然后在你的视图中的某个地方你会要求字符串:
然后在你的控制器(或任何地方)你可以这样做:
在这种情况下可能有点矫枉过正,但这也是 UITableViews 的做法:它们有一个数据源委托向他们提供内容。
If you want to get really fancy, you can make a delegate for your child view.
Then somewhere in your view you would ask for the strings:
Then in your controller (or where ever) you can do:
It's probably a little overkill in this case, but this is how UITableViews do it too: they have a data source delegate to provide them with their contents.