Como desativar completamente a rolagem do UITextView?

Estou desenvolvendo um aplicativo simples de edição de texto para iPad usando o UITextView. Eu sempre tive alguns problemas com o UIScrollView e o UITextView. Eu acho que esperava muita coisa desses dois.

Quando defino myTextView.text como outra instância de NSString, a rolagem ocorre automaticamente. Eu poderia impedir essa rolagem definindo

myTextView.scrollEnabled = NO;
myTextView.text = newText;
myTextView.scrollEnabled = YES;

No entanto, se eu alterasse a propriedade selectedRange de myTextView, ocorreria rolagem.

Especificamente, se o intervalo de SelectedRange acontecesse no texto na tela atual, a rolagem não ocorria.

Por exemplo, se eu selecionar todo o texto tocando na propriedade "Selecionar tudo", a rolagem não ocorrerá. Mas se eu selecionar todo o texto, definindo selectedRange como NSMakeRange (0, [myTextView.text length]), em seguida, rolando para END (a última posição do cursor) ocorreu.

Para resolver os problemas, 1) salvei o deslocamento do conteúdo original do myTextView.

CGPoint originalOffset = myTextView.contentOffset;
// change myTextView.selectedRange here
myTextView.selectedRange = originalOffset

Mas nada aconteceu.

2) Liguei para os códigos acima após alguns segundos usando o NSTimer, e a rolagem retornou corretamente à posição original (deslocamento). No entanto, a rolagem para o final ocorreu primeiro e depois para o topo.

Existe uma maneira de impedir completamente a rolagem do UITextView por um momento?

questionAnswers(1)

yourAnswerToTheQuestion