我一直在尝试在Xcode中保存字符串,例如电子邮件和密码,这样我就可以在不同的视图中打开它们。到目前为止,过去两周的所有尝试都失败了。
有没有人有工作方式,如果有,你可以发布代码。
由于
的 的 *编辑***
几乎完成了这里的错误
(MemberPage *)initWithString: (NSString) S {
self = [super init];
if ( self ) {
//DO STUFF;
UserNAME.text = S.text;
}
return self;
}
错误在第一行: 在initWithString中使用未声明的标识符 也应得到一个;之前:
答案 0 :(得分:0)
我过去最简单的方法之一就是在创建视图时传递它们:
RecieverClass.m:
(RecieverClass*) initWithString: (NString) S {
self = [super init];
if ( self ) {
//DO STUFF;
myLocalString = S;
}
return self;
}
SenderClass(您创建视图的地方)
RecieverClass *recieverClass= [[RecieverClass alloc] initWithString:sendString];
[[self navigationController] pushViewController:recieverClass animated:YES];
[recieverClass release];
你可以将它们作为指针或w / e传递给它们。只是取决于你真正要做的事情。
答案 1 :(得分:0)
我使用单例类在不同视图之间共享数据,对我来说它有效。在源viewController中,我将值作为参数分配给“shared”类,并在目标viewController中检索它。 Dunno,如果它是“合法”的方式,但它很简单,它的工作原理。
答案 2 :(得分:0)
查看本教程:http://www.bit-101.com/blog/?p=1969
在某一点上,你会得到这段代码:
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) {
// Custom initialization
Model *model = [Model sharedModel];
[model addObserver:self forKeyPath:@"text" options:NSKeyValueObservingOptionNew context:nil];
}
return self;
}
添加观察者没有立即为我工作,不知道为什么,但我没有更深入地研究这个问题。 我改成了:
Model *model = [Model sharedModel];
model.parameter = @"btnMainToTarget";
从开始到结束遵循指示 - 它会起作用。 对任何其他人;如果您认为我的回复不准确,请不要犹豫。
问候
答案 3 :(得分:0)
(MemberPage *)initWithString: (NSString *) s {
self = [super init];
if ( self ) {
//DO STUFF;
UserNAME = s;
}
return self;
}
忘了'*'?