NSCollectionView содержится в NSPopover, не показывая содержимое - PullRequest
0 голосов
/ 17 мая 2018

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

Когда я пытаюсь использовать тот же класс контроллера, что и contentViewController для окна NSPopover, окно загружается, как и ожидалось;все элементы управления отображаются и ведут себя как ожидалось - за исключением из подкласса NSCollectionView.Это представление остается пустым независимо от того, как (и когда) я пытаюсь загрузить его содержимое.

Для обоих сценариев используются одни и те же делегаты и источники данных.Как раскадровка выглядит, они работают.Как поповер они не.Я уверен, что что-то упустил, я просто не знаю, что.

Любая помощь приветствуется.

Среда:

  • Mac OS: 10.13.5
  • XCode: 9.3.1
  • Swift: 4,1

1 Ответ

0 голосов
/ 19 мая 2018

Отвечая на мой собственный вопрос - на случай, если кто-то застрянет, как я.Это оказывается простым упущением с моей стороны: инкапсуляция NSCollectionView в подклассах в NSScrollView - да, это было так просто.

Благодаря thierryH91200 и его примеру RetailStoreUISwift: https://github.com/thierryH91200/RetailStoreUISwift для ответа.После тщательного изучения единственной разницей в наших двух реализациях был контейнер scrollview.Как только я добавил это, поповер заработал, как и ожидалось.

На следующий вызов ...

...