Я создаю приложение для рабочей площадки.Сначала отобразится страница входа.когда мы введем имя пользователя и пароль, веб-сервис вернет идентификатор пользователя в качестве ответа.с этим идентификатором пользователя мы можем получать задания.
Я хочу сначала поставить экран заданий и проверить, равен ли идентификатор пользователя нулю, а затем открыть loginview.если это не нуль, тогда загружают работы в табличном представлении.Я использовал Nsuserdefaults для сохранения ответа, когда пользователь впервые вводит имя пользователя и пароль.Все работает нормально.но ключ userdefault показывает ноль в консоли, но мое условие также загружает вывод .. это странно,
мой код
-(void)CheckCond{
NSUserDefaults* storeData = [NSUserDefaults standardUserDefaults];
NSLog(@"Value for userdefault %@",[storeData objectForKey:@"userId"]);
NSString *responseValue = [storeData objectForKey:@"userId"];
NSLog(@"first REsponse value :%@",responseValue);
if ([responseValue isEqualToString:@""]) {
[self LoginLogout];
}
else
{
NSLog(@"self.userId %@",self.userId);
NSUserDefaults* storeData = [NSUserDefaults standardUserDefaults];
[storeData setObject:self.userId forKey:@"userId"];
NSLog(@"%@",[storeData objectForKey:@"userId"]);
[self loadOutput];
}
}
Вывод на консоль при первом входе в систему
2011-09-09 13: 21: 29.438 ITClassifiedUniversal [2718: 207] первое значение отклика: (null) 2011-09-09 13: 21: 29.438 ITClassifiedUniversal [2718: 207] self.userId 77533 2011-09-09 13: 21: 29.438 ITClassifiedUniversal [2718: 207] 77533
После выхода из приложения и перезапуска вывод консоли:
2011-09-09 13:21: 42.044 ITClassifiedUniversal [2731: 207] Значение для пользовательской ошибки (null) 2011-09-09 13: 21: 42.045 ITClassifiedUniversal [2731: 207] первое значение отклика RE: (null) 2011-09-09 13: 21: 42.045 ITClassifiedUniversal [2731: 207] self.userId (null) 2011-09-09 13: 21: 42.045 ITClassifiedUniversal [2731: 207] (null)
Как показано выше, вывод NSUserdefault для ИД пользователя равен null ??В чем проблема?Этот идентификатор пользователя поступает из вида входа в систему
// Create and set up job view controller.
jobView = [[JobViewController alloc] initWithNibName:@"JobView" bundle:nil];
jobView.userId = self.response;
// Create a nav controller with job view as its root controller.
UINavigationController *jobViewNavController = [[UINavigationController alloc] initWithRootViewController:jobView];
// Present the job view nav controller.
[self presentModalViewController:jobViewNavController animated:YES];
[jobView release];
[jobViewNavController release];