Привязка NSOutlineView на основе представления к основным данным

Я пытаюсь реализовать новый OutlineView на основе представлений как список источников в моем приложении Mac. Однако я не могу получить значения для отображения, поэтому я сделал небольшое тестовое приложение из шаблона приложения Core Data и не могу заставить его работать прямо там.

Я определил два простых класса в своей модели данных ; назовем их «Родитель» и «Ребенок». Родитель имеет единственный Атрибут «имя» и единственное отношение «дети». name - это необязательная строка, а children - необязательное отношение ко многим к Child . Дочерний элемент имеет тот же атрибут «имя» и однозначное «родительское» отношение, которое является обратным для дочерних элементов . Я сгенерировал собственные классы для обоих из них и написал заглушку в Child для children , которая возвращает nil .

Я перетащил список источников из объекта библиотеку на мой XIB и вставил в Tree Controller. Для ключевого пути Children контроллера дерева задано значение «children», он находится в режиме имени сущности, с «Parent» в качестве имени сущности, установлен флажок Prepares Content, а его контекст управляемого объекта установлен на контекст делегата приложения. Контроллер дерева является источником данных для представления структуры, и я привязал текстовое представление ячейки данных к представлению ячейки таблицы с помощью ключевого пути «objectValue.name».

в -applicationDidFinishLaunching: Я создаю два экземпляра Parent , один с Child , и назначить свойство name каждому объекту.

Фактическая проблема

No text

Теперь, с этой настройкой в стороне, я получаю строки, появляющиеся в исходном списке, но текстовые поля пусты, даже если они связаны. Я не думаю, что мне нужно делать что-то еще, так как я использую привязки, и я совершенно уверен, что привязка к свойству objectValue - правильная вещь. Что идет не так?

Я могу предоставить более подробную информацию, если необходимо, но я почти уверен, что это охватывает все, что я делал.

16
задан Dov 17 August 2011 в 15:47
поделиться