그래서 plists에 관한 많은 양의 질문을 읽었고 그걸 저장하는 방법도 있습니다. 모르겠지만 왜 지금까지 본 iPhone-Dev-Book에서이 문제를 다루지 않았습니다 (모든 사람들이 좀 PLIST 값을 변경 싶다면didSelectRowAtIndexPath에서 pListPath를 다시 정의하는 이유는 무엇입니까?
가 가pListPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
pListPath = [pListPath stringByAppendingPathComponent:@"piggyBanks.plist"];
NSLog(@"Path: %@", pListPath);
// if the file does not exist yet, create it, and copy the plist data into it, that can be found in the bundle
NSFileManager *fileManager = [NSFileManager defaultManager];
if (![fileManager fileExistsAtPath:pListPath]) {
NSString *sourcePath = [[NSBundle mainBundle] pathForResource:@"piggyBanks" ofType:@"plist"];
[fileManager copyItemAtPath:sourcePath toPath:pListPath error:nil];
}
// make the plist content available for usage
pListContent = [[NSMutableDictionary alloc] initWithContentsOfFile:pListPath];
NSLog(@"pListContent: %@", pListContent);
가
지금까지 너무 좋아,하지만 지금은, 사용자가 탭 경우 :있는 tableView 편집 기능),이 같은 폴더 진짜로 문서에 복사하여 PLIST에 기록 관리 pListPath
, pListContent
및 기타가 .h로 정의되고 .m으로 합성되었지만 pListPath
및 pListContent
을 didSelectRowAtIndexPath
에 다시 정의해야 함에도 알 수있는 tableViewCell (사용자 정의 것입니다.) 그 순간.
누군가가 나에게 이유를 말해 줄 수 있습니까? 내 말은, 그것이 효과가 있다는 것은 좋은 일이지만, 내가 왜 그런 식으로해야하는지, 아니면 다른 곳에서 실수를했는지 알고 싶습니다.
고마워요! plistPath
이 클래스의 문자열 속성 인 경우
안녕하세요, 감사합니다 도움이 될 것입니다
희망. 내가 가지고 있는지 확실하지 않습니다. 나는 당신의 방법을 시도했다. (당신은 sth을 섞었다. 4 행에서 = 다음에 newPath가 있어야한다.) 놀랍게도 그것은 작동한다. 하지만 클래스 변수 대신 self.pListPath를 사용하면 객체 변수가 아닌가? 나는'@property (nonatomic, copy) NSString * pListPath;'와 같은 pListPath를 소개했고, 전에'assign'으로 가지고있었습니다. 자기가없는 다른 유형을 사용하는 것을 기억합니다. 클래스 변수로 .. – Nareille
오타를 지적 해 주셔서 고맙습니다. 답변을 업데이트했습니다. 클래스와 객체 변수에 관해서 당신이 의미하는 바가 확실하지 않습니다. 그것들은 객관적으로 사용되는 용어가 아닙니다. 당신은 경로가 _ 인스턴스 변수가되기를 원합니다. 자기 자신을 통해 액세스하십시오. 당신이 변수를 유지하기 때문에 세터에게는 특히 중요한 접근자를 통과한다는 것을 의미합니다. – jrturton
음, 클래스 변수와 객체 변수가있는 것처럼 배웠습니다. Class V.는 특정 클래스의 모든 객체에서 동일하지만 Object Vs. 모든 개체가이 변수를 가지고 있지만 클래스의 모든 개체마다 다릅니다. 클래스 대. 단순히 VARS 이름으로 불리는 반면, Vs. self.varName과 같은 호출, 어쩌면 그건 혼란 스러워요 .. (나는 C++ 배경에서 오는 중이 야,이 objC도 적용 할 것이라고 생각). objC에서 다른 점은 무엇입니까? self.varName이있는 모든 것은 클래스의 모든 객체에 대해 동일하고 varName은 자체가없는 동안 동일합니다. 객체 V와 같습니다.? – Nareille