UITextViewのサイズを変える


UITextViewを下記のように配置するとテキストを入力する時にキーボードが表示されるので
UITextViewの下の方はキーボドに隠れてしまい入力した文字が見えなくなり入力しづらい。


iPhoneの標準アプリのメモの動きをみるとキーボのちょうど上くらいで改行すると
勝手にスクロースされて入力しやすくなっている。
同じ動きをさせるにはどうすれば良いか考えて実装してみた。
テキスト入力が始まるタイミングでUITextViewのサイズを変更し
テキスト入力が終るタイミングで元のサイズに戻すというやりかたで実装してみた。

コントローラーに追加したメソッド
- (void)textViewDidBeginEditing:(UITextView *)textView {
	if(textView == txtViewComment) {
		CGRect  frame;
		frame.origin.x = 0 ;
		frame.origin.y = 97 ;
		frame.size.width = 320 ;
		frame.size.height = 135 ;

		textView.frame = frame ;
	}
}


- (void)textViewDidEndEditing:(UITextView *)textView {
	if(textView == txtViewComment) {
		CGRect  frame;
		frame.origin.x = 0 ;
		frame.origin.y = 97 ;
		frame.size.width = 320 ;
		frame.size.height = 270 ;

		textView.frame = frame ;
	}
}
実行してみるとこんな感じ