我正在开发一个应用程序,它有点像一个键入页面的笔记本。在iOS中保存并加载多个字符串到UITextView
我有一个UITextView *documentText
和int currentPage
跟踪多个页面。后退和前进按钮添加1或从currentPage
减1,然后他们将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];
感谢您的帮助, -Karl
你真的**重新加载**每页的视图? – Sirens 2012-07-11 17:26:57
不,我只是重置textView – 2456789 2012-07-11 18:16:58