タイプされたページのノートブックに少し似たアプリに取り組んでいます。
複数のページを追跡するためにUITextView *documentText
とがあります。int currentPage
戻るボタンと進むボタンは、 に 1 を加算または 1 を減算してから、 の新しい値に一致するようcurrentPage
にテキストを設定します。documentText
currentPage
ただし、実行すると何も保存されず、空白のテキスト フィールドが表示されます。の問題だと思いますが[saveDocs writeToFile:path atomically:YES encoding:NSUnicodeStringEncoding error:NULL];
、何を変更すればよいのか、それが問題なのかさえわかりません。
とにかく、テキストを保存するために使用しているコードは次のとおりです。
- (IBAction)saveDocs:(id)sender {
NSString *saveDocs = documentText.text;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat: @"%@-%d.txt", @"document", currentPage]];
[saveDocs writeToFile:path atomically:YES encoding:NSUnicodeStringEncoding error:NULL];
[[NSUserDefaults standardUserDefaults] setInteger:currentPage forKey:@"CurrentDocument"];
}
また、ViewDidLoad では、次のコードを使用しています。
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES);
currentPage = [[NSUserDefaults standardUserDefaults] integerForKey:@"CurrentDocument"];
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString* path = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat: @"%@-%d.txt", @"document", currentPage]];
NSString* doc = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
[documentText setText:doc];
助けてくれてありがとう - カール