ios - 从容器 View 中抓取数据

标签 ios objective-c

UIViewController A 中,我有一个嵌入容器 View 的 UITableViewController B。换句话说,ViewController B 位于 ViewController A 的容器 View 中。 A 只包含一个导航栏和 View 底部的“下一个”UIButton。我需要通过A 中的prepareForSegue: 方法发送来自BUITextField 的数据>.m,包含 BUITextfield 数据的 NSMutableArray 应该如何与 A 共享>?

最佳答案

数据无法在整个 segue 中发送,因为 segue 会在 Controller 实例化后立即执行,然后再与文本字段进行任何用户交互。有几种方法可以做到这一点,但最简单的方法是使用 self.parentViewController 访问它,在 A 中设置一个与 B 中的数组相等的数组。以下代码在B中(一定要将A.h导入到B.m文件中,

ControllerA *aController = self.parentViewController;
aController.arrayToGet = self.arrayToPass;

如果愿意,您可以在 B 中创建一个指向 A 的属性 (@property (strong,nonatomic) ControllerA *pointerToA;),并在 prepareForSegue 中设置它的值。然后,您可以使用它代替 self.parentViewController 来访问 A 的任何属性或方法

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    ControllerB *bVC = segue.destinationViewController;
    bVC.pointerToA = self;
}

关于ios - 从容器 View 中抓取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23728618/

相关文章:

ios - .scn 模型中的多个节点导致 iMessage 扩展崩溃

objective-c - iOS 5 SDK 中关于使用不兼容的指针类型进行初始化的新编译器警告

ios - Swift 在点击通知后显示警报

iphone - 内存管理困境, Objective-C

ios - UISearchcontroller 搜索栏委托(delegate)不工作

java - Android Volley Request转iOS NSURL异步请求

objective-c - 异常处理帮助 Xcode 4.6

ios - IOS 中的 TreeView 在从 Scrollview 添加或删除 subview 后重新排列以下 subview

objective-c - NSString 之间的区别?

objective-c - 何时使用多个 MTLRenderCommandEncoders 来执行我的 Metal 渲染?