[英]Xcode: Why doesn't this code work for saving UITextField using NSUserDefaults?
我在UITableViewCell中有一個UITextField。 我想要的不是該應用程序保存用戶輸入的文本。 我嘗試通過使用以下代碼使UITextField調用動作:
[TextField addTarget:self action:@selector(saveTextField:) forControlEvents:UIControlEventEditingDidEndOnExit];
但是,此加載的操作無法正常運行:
- (IBAction)saveTextField:(id)sender {
NSString *TextFieldString = [[NSString alloc] initWithString:TextField.text];
[TextField setText:TextFieldString];
NSUserDefaults *UserSettings = [NSUserDefaults standardUserDefaults];
[UserSettings setObject:TextField forKey:@"TextField"]; }
當我嘗試通過單擊“完成”以隱藏鍵盤來退出UITextField時,出現以下消息:
*** WebKit discarded an uncaught exception in the webView:shouldInsertText:replacingDOMRange:givenAction: delegate: <NSInvalidArgumentException> *** -[NSPlaceholderString initWithString:]: nil argument
應用程序中沒有任何反應。
有什么想法嗎?
提前致謝 :)
我在其中一個應用程序中使用了完全相同的功能,這是我使用的代碼:
[[NSUserDefaults standardUserDefaults]setObject: textField.text forKey:@"TextField"];
基本上,我認為在saveTextField方法中分配新字符串的前兩行不是必需的。
首先:感謝您的努力和時間:)
事實證明,問題不在於保存和加載它的代碼。 問題是我只創建了一個UITextfield,然后將其放入每個UITableViewCell中,這就是問題所在。 所以我為每個UITableViewCells創建了單獨的UITextFields並解決了問題:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.