Добавление гиперссылки на любой текст в UITextFiled и выполнение пользовательских действий - iPhone 4 - PullRequest
0 голосов
/ 11 сентября 2011

Я пытаюсь сделать следующее:

  • Прочитайте и проанализируйте текст в UITextField. Определите все числа в UITextField и преобразуйте их в гиперссылки.
  • При щелчке по этим гиперссылкам выполняется пользовательское действие, которое заключается в отображении таблицы UIActionSheet и на основе выбора назначает номер (в гиперссылке) другому экземпляру UITextField

Например, если в UITextField есть текст - «Это пример теста с номером 123445 и более номерами 44555, 66777».

Я должен быть в состоянии разобрать текст выше, обнаружить все три числа и добавить к ним гиперссылки.

В первой части (синтаксический анализ) я обнаружил, что существует класс NSRegularExpression, который можно использовать для обнаружения шаблонов в тексте. Но я не смог найти способ добавления гиперссылок на совпадающие номера. Я попытался просмотреть документацию Three20 и не мог найти способ. Даже попробовал ответ по этой ссылке - Как вам использовать TTStyledTextLabel? , но он только автоматически определяет URL-адреса и добавляет к ним гиперссылки, я хочу добавить гиперссылки на любой пользовательский текст.

Может кто-нибудь, пожалуйста, помогите мне с этим. Пожалуйста, не просите меня использовать WebView. Я был бы очень признателен за некоторые фрагменты кода. Заранее спасибо. Я использую xCode4.

1 Ответ

0 голосов
/ 11 сентября 2011

Если вам не нужен текст для непосредственного редактирования пользователем, вы можете использовать мой класс OHAttributedLabel для достижения этой цели.( здесь на github )

Это позволяет отображать любые NSAttributedString, а также может автоматически определять ссылки, телефонные номера и все, что может обнаружить класс NSDataDetector Apple.Вы также можете добавить пользовательские ссылки на свой ярлык в любой части текста.

См. Пример проекта, включенного в мой репозиторий github, для получения дополнительной информации. Это очень настраиваемый, как для цвета ссылки, стиля подчеркивания, действия, выполняемого при нажатии на ссылку, так и для типа ссылки, который должен автоматически определяться, и вы можете добавлять любые произвольные ссылки и стиль, которые вам нужны в тексте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...