NSUserDefaults
과 함께 이상한 동작이 발생합니다. 내가 처음에 내 AppDelegate.m의 사용자 기본값으로 배열을 저장하고있다 :NSUserDefaults에서 NSArray를 검색하면 빈 배열이 반환됩니다.
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSArray *weekdayIDs = [defaults objectForKey:@"weekdayIDs"];
: 다른 뷰 컨트롤러
ContentViewController.m 지금
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSArray *weekdayIDs = [defaults objectForKey:@"weekdayIDs"];
if (weekdayIDs == nil) {
weekdayIDs = [NSArray arrayWithObjects:@"su", @"mo", @"tu", @"we", @"th", @"fr", @"sa", nil];
[defaults setObject:weekdayIDs forKey:@"weekdayIDs"];
}
[defaults synchronize];
, 나는 배열을 검색 할
하지만 객체가없는 배열을 얻습니다. 비록 count == 7
입니다. 나는 또한 동일한 결과와 함께 arrayForKey:
을 사용했다. 내 브레이크 포인트에서 스크린 샷을 추가했습니다.
나는 정기적으로 NSUserDefaults
을 사용하고 있지만, 현재 나는 조금이 붙어 있어요. 아마 어리석은 실수 일 테니, 누구든지 도와 주겠니?
정말 고마워요!
- 업데이트 : 나는 또한 첫번째 장소에있는 NSArray의 초기화에 문제가 될 수 있지만, 심지어 NSString *dwid_su = [NSString stringWithString:@"su"];
작동하지 않았다 수동으로 작성하여 그 객체를 대체 할 수 생각
.
안녕하세요. 배열을 'NSLog'하려고 했습니까? 디버거 콘솔에서'po weekdayIDs'를하면 어떻게 될까요? – Alladinian
댓글을 주셔서 대단히 감사합니다. 내 배열 잘 작동합니다. – Julian
내가 처음에는 문제가 발생한 이유에 관심이 있다면 그렇게 생각했습니다. 답변은 다음과 같습니다. http://stackoverflow.com/questions/10963268/float-variables-assigned-value-from-line-above/10963683 # 10963683 – Alladinian