我只想在第二堂课的第一堂课中访问NSString。
我在第一堂课使用了属性,并且:
NSLog(@"The text is: %@", self.fileText);
在我的第一堂课中返回正确的字符串。
但在我的第二节课中,这是:
FirstViewController* controller = [[FirstViewController alloc] init];
NSLog(@"text: %@", controller.fileText);
返回(null)。
我正确导入了这个类。 我怎么可能做错了?
答案 0 :(得分:2)
使用此
//in your first class
NSUserDefaults *strinToSave= [NSUserDefaults standardUserDefaults];
[strinToSave setObject:self.fileText forKey:@"filTextString"];
并在第二个类中检索已保存的数据,请使用:
NSString *yourString=[[NSUserDefaults standardUserDefaults] valueForKey:@"filTextString"];
//use yourString however you want
NSLog(@"%@",yourString);
答案 1 :(得分:0)
考虑第二个类要么是第一个类的子类,要么是类的实例(似乎更有可能)。
确保你在FirstViewController
的init块中正在做什么,因为这是为第二个实现调用的所有内容,如果你没有在那里初始化你的字符串,那么该值将为null。所以,检查那里。