※本記事は、旧ブログからの再掲です。

画面の下の方のテキストフィールドに入力する際に、キーボードがテキストフィールドの上に表示されてしまうことがあります。
その場合にはキーボードが表示されるのに合わせて、入力しようとしているテキストフィールドを隠れないように上に引っ張り上げます。
※今回はスクロールビューを使用している場合の方法です。
contentOffsetのサイズをキーボードの高さ分追加し、編集中のテキストフィールドを一番上に持ってきています。

キーボードの表示・非表示時に通知を受けるためには、事前にその登録が必要となります。
通知の登録/解除は viewWillAppear/viewWillDisappear などの処理の中で行います。
UIKeyboardWillShowNotification(キーボード表示前に通知)
UIKeyboardWillHideNotification(キーボード非表示前に通知)
同時に通知を受けとるメソッドも登録します。
keyboardWillShow:(キーボード表示前に呼ばれるメソッド)
keyboardWillHide:(キーボード非表示前に呼ばれるメソッド)
(さらに…)