Я искал решение для этого все утро, но еще не нашел что-то, что работает.Настройка позиции курсора UITextView до конца текста
У меня есть текстовое представление, в котором есть определенный фиксированный текст, который я не хочу, чтобы пользователь мог изменять. В этом случае каждый из моих текстовых представлений начинается с «1.», «2.» и т. Д. Идея состоит в том, что введенный текст будет пронумерован для чего-то, что я делаю позже.
Я не хочу, чтобы пользователь мог удалять этот текст (это по существу «постоянный»). Я также не хочу, чтобы они начали добавлять текст в середине этого предварительного текста.
Чтобы справиться с этим, я сделал:
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
if (range.location < 3) return NO;
return YES;
}
Это прекрасно работает, за исключением того, что если пользователь касается где-нибудь в моем «1.», «2» и т.д. части зрения, установит там курсор, который затем запретит пользователю вводить текст из-за проверки местоположения диапазона. То, что я хочу сделать в этом случае, - установить курсор (возможно, в textViewDidBeginEditing) до конца текста в представлении. Однако, независимо от того, какая комбинация selectedRange я использую, я просто не могу заставить курсор черновой двигаться до конца. Любая помощь будет принята с благодарностью.
Еще проще будет поместить ваши номера в ярлыке прямо против вашего текстового вида, чтобы они выглядели так, как будто они являются частью того же предложения. Тогда они смогут изменить только соответствующую часть. – lnafziger