Objective c 试图从TextView保存文本(数据)
我正在使用Xcode开发一个iPhone应用程序 我已经创建了一个包含textview的视图控制器,我希望用户能够在其中输入可以保存的文本 现在,这是我为这个视图控制器编写的代码Objective c 试图从TextView保存文本(数据),objective-c,ios7,uitextview,Objective C,Ios7,Uitextview,我正在使用Xcode开发一个iPhone应用程序 我已经创建了一个包含textview的视图控制器,我希望用户能够在其中输入可以保存的文本 现在,这是我为这个视图控制器编写的代码 -(void)viewDidLoad { [super viewDidLoad]; self.navigationItem.title = @"Notes"; self.navigationItem.rightBarButtonItem = self.editButtonItem; } -(v
-(void)viewDidLoad
{
[super viewDidLoad];
self.navigationItem.title = @"Notes";
self.navigationItem.rightBarButtonItem = self.editButtonItem;
}
-(void)viewWillAppear:(BOOL)animated{
self.notesText.text = _notesText.text;
}
-(void)setEditing:(BOOL)editing animated:(BOOL)animated
{
[super setEditing:editing animated:animated];
self.notesText.editable = editing;
[self.navigationItem setHidesBackButton:editing animated:YES];
if (!editing) {
_notesText.text = self.notesText.text;
}
您看到的代码允许我保存数据,但前提是应用程序保持打开状态。我可以保存文本,数据将显示并显示应用程序是否保持打开状态。如果我保存文本并关闭应用程序,当我再次打开应用程序时,数据不会出现,因此我假设它不会保存它
有人知道为什么会这样吗。我应该更改或添加什么
任何帮助都将不胜感激 我不清楚你在问什么
- 如果要将文本永久保存在某个位置,应使用类似于
或核心数据
的内容李>NSUserDefaults
- 如果您只想在注释中保留对文本的引用,请创建一个
属性,并在NSString
。将屏幕上的内容保存到类似于视图中使用该属性将显示:
视图的内容将消失:
- 如果你只是想让文本在应用程序后台时留在屏幕上,你不必做任何事情
如果您希望即使视图已关闭也只保留文本,则必须使用根ViewController保留字符串如果需要将数据转储到文件中,可以执行以下操作:
+(void)createFile:(NSString*)receivedString
{
//Get the file path. Then create a new file if one doesn't exist already or append to it if it does exist
NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *fileName = [documentsDirectory stringByAppendingPathComponent:@"Filename.txt"];
//create file if it doesn't exist
if(![[NSFileManager defaultManager] fileExistsAtPath:fileName])
[[NSFileManager defaultManager] createFileAtPath:fileName contents:nil attributes:nil];
//append text to file
NSFileHandle *file = [NSFileHandle fileHandleForUpdatingAtPath:fileName];
[file seekToEndOfFile];
[file writeData:[receivedString dataUsingEncoding:NSUTF8StringEncoding]];
[file closeFile];
}
但是,如果数据较小,则可以使用NSUserDefaults
NSUserDefaults *def = [NSUserDefaults standardUserDefaults];
[def setObject:<you text view data> ForKey:@"yourKey"];
NSUserDefaults*def=[NSUserDefaults standardUserDefaults];
[def setObject:ForKey:@“yourKey”];
我希望保存用户输入的文本,并在应用程序关闭后仍保留在应用程序中。(现在,如果应用程序完全关闭,数据不会显示)然后将数据保存在NSUserDefaults或Core data中。很抱歉给您带来麻烦。我对这门语言和这类编程相当陌生,你知道有什么教程,比如你提到的,我可以在那里学习如何使用它们。这只是一行代码<代码>[[NSUserDefaults standardDefaults]setObject:yourText-forKey:@“SomeKeyToRetrieveIthrater”]代码>如果我将数据放入文件中。如何将文件重新加载回textview?您必须编写一个方法来读取您创建的文本文件,将其内容复制到NSString对象中,然后将NSString对象设置为您的textview。类似于self.myTextView=stringObj;您可以参考以下答案: