2011-03-15 3 views
0

plist에서 일부 구문을 검색 중이고 이러한 문을 터치 할 때마다 화면에 표시하고 싶습니다. 그러나 문제의 해결 방법을 찾을 수 없습니다. 그래서 이것을 구현하는 방법에 대한 도움을 청한다. 나의 코드는 아래에있다.plist에서 화면을 터치 할 때마다 텍스트 업데이트

int RecordIndexDitados = 0; 

NSMutableArray *dictDitados; 

NSString *path = [[NSBundle mainBundle] bundlePath]; 
NSString *finalPath = [path stringByAppendingPathComponent:@"Ditados.plist"]; 
NSDictionary *plistData = [[NSDictionary dictionaryWithContentsOfFile:finalPath] retain]; 

NSDictionary *ditados = [plistData objectForKey:@"Ditados"]; 
NSMutableArray *selection = [[ditados objectForKey:@"Selection"] mutableCopy]; 

RecordIndexDitados = arc4random()%[selection count]; 

// Select and display currently selected record from the array. 
dictDitados = [selection objectAtIndex:RecordIndexDitados] 

CCLabel *ditados = [CCLabel labelWithString:@"Question" 
            dimensions:CGSizeMake(400, 200) 
             alignment:UITextAlignmentCenter 
             fontName:@"Brush Script" fontSize:36]; 
    ditados.color = ccc3(0, 74, 128); 
    [ditados setPosition:ccp(240, 120)]; 
    [self addChild: ditados]; 
    [ditados setString:[NSString stringWithFormat:@"%@",dictDitados]]; 

<plist version="1.0"> 
<dict> 
    <key>Ditados</key> 
    <dict> 
     <key>Selection</key> 
     <array> 
      <string>Text 1</string> 
      <string>Text 2</string> 
      <string>Text 3</string>  
     </array> 
    </dict> 
</dict> 
</plist> 
+0

plist의 예를 제공해주세요. – Bongeh

답변

0

plist를 메모리에로드하고 거기에서 콘텐츠를 업데이트하지 않는 이유는 무엇입니까? 이 방법을 사용하면 plist에서 데이터를 한 번만로드합니다. 화면을 터치 할 때마다 그렇지 않습니다.

0

첫 번째는 plist를 디자인 할 때 일부 임시 객체 (문자열, 배열 또는 디렉토리)에 plist 내용을 읽습니다.

두 번째는 업데이트 된 값을 temp 개체에 삽입합니다.

세 번째는 임시 개체를 주 개체에 할당합니다.

4 번째 주 개체를 파일에 씁니다. 이해를 돕기 위해

는 다음과 같이 참조 : 그것은 수도

http://iphonesdevsdk.blogspot.com/2011/04/plist.html

당신을 도와줍니다.

관련 문제