У меня есть приложение с основанным на представлении NSTableView
. Внутри этого табличного представления у меня есть строки с ячейками, содержимое которых состоит из многострочного NSTextField
с включенным переносом слов. В зависимости от текстового содержимого NSTextField
размер строк, необходимых для отображения ячейки, будет варьироваться.
Я знаю, что могу реализовать метод NSTableViewDelegate
- tableView: heightOfRow:
, чтобы вернуть высоту, но высота будет определяться на основе переноса слов, используемого в ] NSTextField
. Перенос слов в NSTextField
аналогичным образом основан на том, насколько широк NSTextField
… что определяется шириной NSTableView
.
Таааааааааааааааааааааааачоне) я думаю, что мой вопрос ... какой хороший шаблон проектирования для этого? Кажется, все, что я пробую, превращается в запутанный беспорядок. Поскольку TableView требует знания высоты ячеек для их размещения ... а NSTextField
требует знания его макета, чтобы определить перенос слов ... а ячейке необходимо знание переноса слов, чтобы определить его высота ... это круглый беспорядок ... и это сводит меня с ума .
Предложения?
Если это важно, конечный результат также будет иметь редактируемые NSTextFields
, размер которых будет изменяться в соответствии с текстом внутри них. У меня это уже работает на уровне представления, но представление таблицы еще не регулирует высоту ячеек. Я полагаю, что как только проблема с высотой будет решена, я воспользуюсь методом - noteHeightOfRowsWithIndexesChanged
, чтобы сообщить представлению таблицы, что высота изменилась ... но он все равно будет запрашивать у делегата высоту ... следовательно, мой затруднения.
Заранее спасибо!