textViewの文字を入力した時を検知してその度にuserDefaultsなどで保存します。
textFieldの場合は上記の参考サイト様でできるのですがtextViewの場合はaddtargetがtextViewにはつけられなかった?ので
とりあえずの対応をします
UITextViewDelegateを追加して
class DetailViewController: UIViewController,UITextViewDelegate{
これもViewDidLoadの中とかに追加
textView.delegate = self
//MARK: textView文字打つごと呼ばれる
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
print("文字打った")
DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
text = self.textView.text!
UserDefaults.standard.set(text, forKey: "text")
}
return true
}
DispatchQueueを使わないと予測変換などには対応できなくなってしまいます。
なんかこんな感じにDispatchQueue.main.asyncAfterで処理を遅らせると
よくわからないがいい感じ予測変換も保存してくれる
参考程度に
試してみてください。