UITextView setText não deve ir para o topo no ios8
O código do iOS 8 a seguir é chamado a cada segundo:
- (void)appendString(NSString *)newString toTextView:(UITextView *)textView {
textView.scrollEnabled = NO;
textView.text = [NSString stringWithFormat:@"%@%@%@", textView.text, newString, @"\n"];
textView.scrollEnabled = YES;
[textView scrollRangeToVisible:NSMakeRange(textView.text.length, 0)];
}
O objetivo é ter o mesmo comportamento de rolagem para baixo que o console do XCode quando o texto começar a escorrer pela parte inferior. Infelizmente, setText faz com que a exibição seja redefinida para o topo antes que eu possa rolar novamente para baixo com scrollRangeToVisible.
Isso foi resolvido no iOS7 com o código acima e funcionou, mas após a atualização na semana passada para o iOS8, essa solução não parece mais funcionar.
Não consigo descobrir como fazer isso fluentemente sem o comportamento de pular?