朋友 在这里,我是iphone的新手,我必须提出申请 我有一个按钮,按钮名称是在xib注册,如果我点击按钮,然后注册表格将打开
在Web服务器中创建注册表单 如果用户填写登记表 假设他在注册时填写用户名和密码,它将保存在服务器中,同样的用户名和密码也应保存在本地数据库中 请帮我这个紧急的朋友
提前谢谢
答案 0 :(得分:3)
您有3个主要选项来保存登录数据;设置,核心数据和SqlLite。对于用户名和密码,您只需要使用“设置”,因为其他两个选项的开销过大,而且它们更常用于关系数据。
要使用设置,您需要在应用程序控制器通过调用初始化时加载它们;
+ (void) loadDefaultSettings {
NSString *path = [[NSBundle mainBundle] bundlePath];
NSString *pListPath = [path stringByAppendingPathComponent:@"Settings.bundle/Root.plist"];
NSDictionary *pList = [NSDictionary dictionaryWithContentsOfFile:pListPath];
NSMutableArray *prefsArray = [pList objectForKey:@"PreferenceSpecifiers"];
NSMutableDictionary *regDictionary = [NSMutableDictionary dictionary];
for (NSDictionary *dict in prefsArray) {
NSString *key = [dict objectForKey:@"Key"];
if (key) {
id value = [dict objectForKey:@"DefaultValue"];
[regDictionary setObject:value forKey:key];
}
}
[[NSUserDefaults standardUserDefaults] registerDefaults:regDictionary];
}
然后,您可以通过方法调用存储您的用户名和密码;
+ (void) storePersistedLogin:(NSString *)uid withPassword:(NSString *)pswd {
[[NSUserDefaults standardUserDefaults] setObject:uid forKey:@"UID"];
[[NSUserDefaults standardUserDefaults] setObject:pswd forKey:@"PSWD"];
}
您可以使用以下方法填充UITextField输入;
+ (void) populatePersistedLogin:(UITextField **)uid andPassword:(UITextField **)pswd {
[*uid setText:(NSString *)[[NSUserDefaults standardUserDefaults] objectForKey:@"UID"]];
[*pswd setText:(NSString *)[[NSUserDefaults standardUserDefaults] objectForKey:@"PSWD"]];
}
我在单独的SettingsUtils类中有这些公共方法,所以我可以确保我的键是相同的。您也可以将密钥声明为NSString对象,以减少错误输入密码的可能性。