UITextView change height instead of scroll

Tom Irving picture Tom Irving · Apr 5, 2010 · Viewed 11.6k times · Source

By default, the UITextView's contentView becomes scrollable when there is too much text to fit into the textview based on it's height.

I'd like to disable this and instead, update the height of the UITextView to fit in the text. The reason I'm doing this is because I'm adding the UITextView as a subview of a UIScrollView which should handle the scrolling, much like in the native Mail app (when you enter text, the whole view scrolls up, not just the textview.

Anyone got some ideas / has run into the same problem before?

Answer

jhauberg picture jhauberg · Apr 6, 2010

It is very simply done like this:

CGRect frame = textView.frame;

frame.size = textView.contentSize;

textView.frame = frame;

This should set the height of the textview to appropriately fit all of its content.