【发布时间】:2014-04-18 19:07:28
【问题描述】:
我无法解决以下方法遇到的小问题:
+ (User *) createUserForLoginWithFacebookToken: (NSString *) facebookToken andExpirationToken: (NSDate *) expirationToken{
//Init current user before having collected data from API after authentication
NSManagedObjectContext *managedObjectContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSMainQueueConcurrencyType];
managedObjectContext.parentContext = [RKManagedObjectStore defaultStore].mainQueueManagedObjectContext;
NSEntityDescription *entityDescription = [NSEntityDescription entityForName:@"User" inManagedObjectContext:managedObjectContext.parentContext];
User * result = [[User alloc] initWithEntity:entityDescription insertIntoManagedObjectContext:managedObjectContext];
result.email=@"defaultValue@test.com";
result.gender=[NSNumber numberWithInt:-1];
if (facebookToken != nil && expirationToken != nil && ![facebookToken isEqualToString:@""] && [expirationToken compare:[NSDate date]]==NSOrderedDescending) {
result.facebookToken=facebookToken;
result.facebookExpiration=expirationToken;
}
return result;
}
在返回之前,会创建结果变量并设置一些属性。但是当我用这个方法获取这个返回的对象时:
currentUser=[User createUserForLoginWithFacebookToken:facebookToken andExpirationToken:facebookExpiration];
currentUser 变量存在,但所有属性均为零。
我是 Objective-c 的初学者,我很确定解决方案是显而易见的,但我现在无法修复它。
提前感谢您的帮助。
【问题讨论】:
-
调试器中的nil,还是NSLog输出中的nil?
-
它在调试器上(我的测试),所以我刚刚放了一个 NSLog,最后它们都为零。
标签: ios objective-c core-data restkit null