Как бы вы создали вид вопрос / ответ (iPhone SDK) - PullRequest
1 голос
/ 27 марта 2010

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

В представлении должна отображаться проблема (с использованием форматированного текста / выделенного синтаксиса текста) и несколько возможных ответов. Пользователь должен иметь возможность нажать на ответ, чтобы подтвердить его.

В настоящее время я пытаюсь использовать UITableView для встраивания UIWebView в качестве contentView. Это позволяет мне легко отображать форматированный текст. Проблема в том, что реальная боль - вычислять и регулировать высоту ячеек. Я должен предварительно загрузить веб-представление, вызвать sizeToFit, получить его высоту и соответствующим образом обновить ячейку. Этот процесс должен быть выполнен для проблемы и ответов (так как они также представляют собой текст в формате HTML).

Это такая боль, что я планирую переключиться на что-то другое. Я думал, используя только большой UIWebView и проектировать все в HTML. Но я посмотрел некоторые статьи, описывающие, как общаться между HTML-страницей и кодом ObjectiveC. Кажется, это тоже связано с некоторыми ужасными трюками ...

Итак ... вот и все, я действительно не знаю, что мне делать. Я полагаю, что некоторые из вас имели дело с такими вещами раньше, и дали бы некоторые очень ценные советы:)

1 Ответ

1 голос
/ 27 марта 2010

Смысл в том, что iPhone API еще не поддерживает NSAttributedString, поэтому вы не можете просто настроить отображение текста так, как вы хотели бы в текстовом представлении.

Я видел одну работу, которая по существу использовала отдельные UILabels для представления каждого запуска атрибута. (Сейчас не могу найти ссылку.) Они использовали расширения NSString UIKit для вычисления положения строк в представлении, а затем использовали его для позиционирования меток.

Еще один обходной путь - нарисовать строки с их атрибутами в UIImage, а затем просто отобразить изображение. Это было бы самым простым решением, я думаю.

В любом случае вам придется в основном воссоздать структуру данных приписанной строки.

NSAttributedString делает для нас большую работу. Мы действительно скучаем по нему, когда он ушел.

...