UITextViewで自動保存とかやってみたい!
いまどきのアプリなら、やっぱりいちいち「保存」ボタンとか押さない。勝手に保存しちゃうはず。ましてや3.5インチのフロッピーをアイコンにしないはず!
ということで、ひとまずフォーカスを失うごとに内容を保存させるメモ。カスタムにつくったTableViewのCellでハマったのでそこを重点的に。
基本はDelegate
手順としてはこんな感じ。
1:ViewにUITextViewを配置
StoryBoardでぱっと。Viewのクラスにアウトレットを繋いでおきます。
2:Viewの.hでDelegateを宣言
<UITextViewDelegate>を忘れずに。
3:Delegateを設定
.mの中でUITextViewのdelegate = selfを書いちゃう。
4:イベントをとる
「UITextViewの編集終わり」ということで、こちらを指定。
-(void)textViewDidEndEditing:(UITextView *)textView
ここで、テキストの値をCoreDataなりParseなりに保存します。
普通(?)ならこれでOKなんですが、同じ心づもりで自作したCellのTableViewでやったら、なぜかイベントが取れない!?delegateに指定もされてるはずなのに・・・。
で、よくよく見たところ、ワタクシ、
- initWithStyle:style reuseIdentifier:reuseIdentifier
の中でdelegate=selfしてました。これを
- awakeFromNib
の中に変更したところ、無事にイベントがとれました。
忘れていつかまたやりそう。