我正在为我的应用程序使用一个简单的UIViewController,这不是太复杂。它有两页。在第一页上,我将数据输入到文本框中,以指示将在第二页上处理的用户可更改数据。
@property (weak, nonatomic) IBOutlet UITextField *routeText;
当我在第二页上运行操作时,我使用这样的命令来访问输入到文本框中的内容:
NSString *variable = [[NSString alloc]initWithFormat:@"%@",self.routeLabel.text];
self.consoleView.text = variable;
但值始终为(null)。我对所有代码使用相同的TravelViewController.h / .m。我的问题是:这是不可接受的编码行为以这种方式共享它还是我需要以不同的方式定义对象,以便文本可以在视图之间共享?
感谢您提供的任何帮助。
答案 0 :(得分:1)
如果它是不同的视图控制器,则需要使用@property将文本从父视图控制器传递给子视图。在第二个类中声明它,当你从第一个屏幕推到第二个屏幕时,在@property中设置这个值。之后,您可以使用self.text在第二个屏幕中使用它。