Цель C: Самый простой способ реализации нескольких действий в абзаце текста (например, комментарии) - PullRequest
2 голосов
/ 21 июня 2011

Я пытался реализовать механизм комментариев в моем приложении (UItableView), но столкнулся с проблемами

1) Как добавить комментарий в ячейку таблицы в формате «имя пользователя» +«текст комментария», посредством которого пользователь может щелкнуть имя пользователя, и появится соответствующий профиль пользователя.Текст комментария будет просто статическими данными в ячейке

2) Как я могу динамически рассчитать высоту всех комментариев, что в конечном итоге приведет к определению высоты всей ячейки?

Iя понимаю, что механизм комментариев в Instagram - это то, что я имею в виду (см. ниже)

enter image description here

Может кто-нибудь посоветовать мне, как я могу реализовать механизм комментариев, такой как Instagram?Я попытался создать подкласс UIControl и добавить UILabel (как свойство к нему).Но этот подход кажется немного запутанным и негибким.Поэтому любые советы по этому вопросу будут с благодарностью.

1 Ответ

2 голосов
/ 21 июня 2011

Если вы соответствуете лицензии MIT, вы можете использовать мой OHAttributedLabel класс.

Это позволит вам использовать NSAttributedStrings с разными стилями для слов надписи (имя выделено жирным и синим цветом, например, комментарий черным), а также добавлять гиперссылки на текст.

Вы также можете использовать правильно сконфигурированный экземпляр (шрифт по умолчанию, размер и т. Д.) И его метод sizeThatFits:, чтобы вычислить размер, необходимый для текста, и использовать высоту возвращаемого размера, чтобы вычислить высоту вашей ячейки соответственно. *

[EDIT] Как указывал @Simon Lee, имейте в виду, что здесь используется CoreText, который доступен только в iOS 3.2 для iPhone или iOS 4.0 на iPad.

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