2014-10-03 2 views
-6

그래서 사용자 기본 설정을 자체 키에 저장하는 프로그램이 있습니다. 그래서 forKey:textField.text모두 NSUserDefaults, 모두 tableview에 있음

그래서 사용자가 무엇을 사용하고 있는지 알지 못해 원하는만큼 만들 수 있습니다. 프로그램에서 NSUserDefaults를 모두 가져올 수있는 테이블보기를 가질 수 있기를 원합니다. 그것을 표시하십시오.

모든 NSUserDefault를 사용하여 배열을 만들 수 있습니까? 배열을 표시하는 방법을 알고 있습니다. 이것은 해결되었습니다!

좋아, 내가 어떻게 해결했는지, 사용자가 새로운 객체를 만들 때마다, NSArray에 저장되고 NSArray가 NSUserDefaults에 저장됩니다. 나는 tableView에 정보를 제공 할 prepareForSegue를 가지고 있으며 그 정보가 나타납니다. 셀을 누를 때 셀 이름을 가져오고 forKey에 입력하면 작동합니다!

아래의 답변 된 질문에서 도움을 받으십시오.

시간을내어 답변 해 주신 분께 감사드립니다.

+0

추측을하게하겠습니다. 사용자 설정을 원하십니까? –

+0

아니요 어디서나 검색하지 않았습니다. 여기 주변의 대부분의 질문과 마찬가지로, 당신이 필요로하는 것은 클래스 참조 문서에 잘 쓰여 있습니다. – Desdenova

+0

온라인 자습서를 작성 했습니까? 그래서 코드 작성 서비스가 아니라 NSUserDefaults에 NSArray (또는 NSMutableArray)를 추가하여 모든 문자열을 배열에 저장하고 NSUserDefaults – Paulw11

답변

1

배열을 userDefaults로 설정할 수 있습니다. 구현은 매우 간단합니다.

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    [self addTextToUserDefaults:@"hello"]; 
    [self addTextToUserDefaults:@"how are you?"]; 
    [self addTextToUserDefaults:@"hi"]; 

    for (NSString *text in [self textsInUserDefaults]) { 
     NSLog(@"%@", text); 
    } 
} 

- (void)addTextToUserDefaults:(NSString *)aText 
{ 
    NSMutableArray *texts = [[[NSUserDefaults standardUserDefaults] objectForKey:@"textArray"] mutableCopy]; 
    if (!texts) { 
     texts = [NSMutableArray new]; 
    } 
    [texts addObject:aText]; 

    [[NSUserDefaults standardUserDefaults] setObject:texts forKey:@"textArray"]; 
    [[NSUserDefaults standardUserDefaults] synchronize]; 
} 

- (NSArray *)textsInUserDefaults 
{ 
    return [[NSUserDefaults standardUserDefaults] objectForKey:@"textArray"]; 
} 

그래서 당신은 단순히 addTextToUserDefaultstextsInUserDefaults 방법
전화 [self addTextToUserDefaults:textField.text];는 텍스트의 배열을 검색 할 텍스트,
전화 [self textsInUserDefaults]을 추가로 복사 할 수 있습니다.