Как мы можем выделить текст в текстовом виде, как показано ниже, пользователь нажимает выбранный стих на hilight на стих желтого цвета и всплывающее окно apper для этого стиха для действия. Как это сделать это? Спасибо заранее. выделите текст в текстовом поле
ответ
Это возможно только с использованием CoreText, поскольку для отображения текста с несколькими стилями и цветами шрифта необходимы атрибуты форматирования и NSAttributedString
.
Возможно, вас заинтересует класс OHAttributedLabel
, который является подклассом UILabel
для визуализации NSAttributedString
(очевидно, для этого используется CoreText).
Поскольку установка цвета фона текста не может быть напрямую возможной/не поддерживается (нет соответствующего атрибута в NSAttributedString
), вам может понадобиться рисовать желтые прямоугольники (перед рисованием текста) самостоятельно, но я сделал это в моем классе тоже управлять выделенными ссылками (см. метод drawActiveLinkHighlightForRect:
), чтобы вы могли сделать аналогичную вещь в своем случае.
, вам нужно рассчитать размер текста на основе глифной информации или методов удобства для набора фреймов. ИЛИ вы можете создать подробную структуру данных, которая содержит (приписываемый) текст и исправления для выбора, обнаружение касания и т. Д. –
Да, что сказал Мартин, и посмотрите на мой 'drawActiveLinkHighlightForRect:' в моем источнике, который делает именно это (рисование фона rect заданного диапазона текста). Это может показаться немного сложным, но оно управляет случаями, когда текст выделяется пересечением нескольких строк (например, на вашем снимке экрана). – AliSoftware
Вы правильно настроили OHAttributedLabel? Проверьте мой примерный проект в репозитории github, я приведу много примеров. Попробуйте повлиять на ваши стихи в этом примере проекта, чтобы проверить, что он работает. Проверьте также, что ваш 'OHAttributedLabel * lable1' достаточно высок (рамка достаточно большая, чтобы отобразить атрибутString), или используйте' sizeToFit' для его соответствующего размера. _ (Обратите внимание, что если у вас есть проблемы, вы можете искать SO, то есть несколько вопросов и ответов о моей «OHAttributedLabel» здесь) _ – AliSoftware
- 1. Выделите текст в текстовом поле
- 2. Wordpress - Выделите текст в текстовом поле
- 3. Выделите текст в текстовом поле в определенной точке
- 4. Выделите текст в текстовом поле по нескольким строкам
- 5. Выделите (выберите) текст в текстовом поле при нажатии кнопки
- 6. Выделите часть текста в текстовом поле extjs
- 7. Выделите предопределенные местоположения в текстовом поле
- 8. текст в текстовом поле
- 9. текст в текстовом поле
- 10. Выделите наборы совпадений в текстовом поле
- 11. Выделите текст при нажатии
- 12. текст описания в текстовом поле?
- 13. Частичный текст в текстовом поле
- 14. Вкладка «Текст» в текстовом поле
- 15. Выбранный текст в текстовом поле
- 16. Текст выбирается в текстовом поле
- 17. Удалить текст в текстовом поле
- 18. Статический текст в текстовом поле?
- 19. Незаменимый текст в текстовом поле
- 20. подчеркнуть текст в текстовом поле
- 21. Фоновый текст в текстовом поле
- 22. Выделите текст в двух текстовых полях одновременно
- 23. Выделите различия между двумя файлами xml в текстовом поле Tkinter
- 24. Dissapear текст в текстовом поле в C#
- 25. Текст в текстовом поле в конце
- 26. jquery Выделите текст или символ в текстовом поле с разным цветом
- 27. Очистить текст в текстовом поле JavaScript
- 28. Почему ShowDialog выбирает текст в текстовом поле?
- 29. Сохранять текст в текстовом поле после отправки
- 30. Только текст в текстовом поле можно щелкнуть
Я считаю, что ваш пример использует инфраструктуру CoreText для рендеринга объектов NSAttributedString –
Как я могу использовать основную работу текстового фрейма – ICoder