我正在编写一个 iphone 应用程序,它从第一个 View (RootViewController
) 获取用户输入,然后它需要将输入传递给“结果” View Controller ,这是另一个使用输入查询服务器,解析 JSON
字符串并在 UITableView
中显示结果。我被困在如何将这些字符串(从 RootViewController
上的用户输入)“发送”到第二个 ViewController 上...有什么想法吗?
提前致谢
史蒂芬
最佳答案
根据 View 的设置方式,可以通过三种方式执行此操作。
首先,您可以使用 NSNotificationCenter
发布字符串的通知。另一个 View 将注册为通知的观察者,并可以在通知发布时收集信息。
其次,如果第二个 View Controller 由第一个呈现,即您分配/初始化 VC 并使用导航 Controller 呈现它,您可以在第二个 VC 中创建一个属性并从根设置它。在第二个 VC 的 header 中,您将创建以下内容:
NSString *someString;
和
@property (nonatomic, retain) NSString *someString;
然后 @synthesize someString;
在实现文件中。这样做可以让您在呈现 View 之前设置值。
最后,如果 View 不相关,因为第二个 VC 不是由根提供的,您将创建一个从根到第二个 VC 的 IBOutlet。假设您像上一个解决方案一样设置了属性,您将按照 self.secondVC.someString = myStringToPass;
希望其中之一能有所帮助
编辑:意识到我已经注释掉了指向 NSNotificationCenter 的链接....哎呀
关于iphone - 如何将 NSSString 从 RootViewController 传递到另一个 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7289738/