Есть ли способ (сумасшедшие хаки приветствовать), чтобы получить текущую строку в виде строки UITextView? Это будет включать в себя перенос слов и т.д. Например, в данном случае:UITextView получить текущую строку
метод будет возвращать «? Переполнение стека Разве это не здорово я», потому что это текущая линия, основанная на курсоре ,
Он также может вернуться «Это тест, который я сделал для» или «думаю так», в зависимости от положения курсора. Я пробовал работать как с методами UITextView, так и с протоколом UITextInput.
EDIT:
Вот код, который я пытался использовать. Причина, по которой мне нужно найти строку, - это получить ее длину, поэтому именно поэтому вы увидите код на основе интерфейса.
NSRange location = self.textView.selectedRange;
NSString *searchString = [self.textView.text substringWithRange:NSMakeRange(0, location)];
CGSize currentStringDimensions = [searchString sizeWithFont:self.textView.font constrainedToSize:CGSizeMake(self.textView.frame.size.width, self.textView.frame.size.height) lineBreakMode:NSLineBreakByWordWrapping];
float numberOfRows = (currentStringDimensions.width/(self.textView.frame.size.width));
float left = (float)(numberOfRows - (int)numberOfRows) * (self.textView.frame.size.width);
Это не работает. Я думаю, что это могло бы иметь что-то со словами, которые были обернуты или персонажи разного размера, но левое значение непоследовательно или выключено после первой строки.
Показать код, который вы пробовали и то, что он на самом деле вернулся, как близко ты получил (я бы сказал, что 'UITextInput' является правильный подход). – Wain
Будет ли обновлять главный вопрос с ним – roozbubu
Посмотрите это - http://stackoverflow.com/questions/4421267/how-to-get-text-from-nth-line-of-uilabel/14413484#14413484 – TheTiger