Вещи приложения задач. Как? - PullRequest
0 голосов
/ 20 января 2010

Ребята, есть мысли, как создать элементы интерфейса как задачи в приложении Things? это Nstableview?

1 Ответ

0 голосов
/ 20 января 2010

Вещи, кажется, используют свой собственный вид.

Если бы все элементы в вашей коллекции были одинакового размера, вы могли бы легко сделать это с NSCollectionView и подклассом NSCollectionViewItem с пользовательским фоном. Однако, поскольку они имеют переменную высоту, вам придется катиться самостоятельно.

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

Самая простая мозаика - это просто пролистывать каждое представление, выравнивая его до его высоты для заданной ширины, а затем выстраивая в ряд следующее после него ... Однако вы захотите рассмотреть производительность для больших коллекций. В этом случае существуют различные подходы к кэшированию, которые были описаны здесь и там на обычных каналах Какао.

Я делаю то же самое в одном из моих продуктов - примерно с 2004 года стабильно улучшая производительность за счет кэширования предварительно нарисованных представлений «записи», используя «реальное» представление записи только для того, которое редактируется редактором. пользователь. Другими словами, освоить основы легко, но выжать хорошую производительность из большой коллекции становится все труднее. : -)

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