/ / Отримання даних з NSTableView в NSViewController - об'єкт-c, какао, основні дані, nstableview

Отримання даних з NSTableView на NSViewController - об'єктив-c, какао, основні дані, nstableview

Я хотів би мати "Детальний перегляд", коликористувач подвійний клацає по рядку, я "" просто не впевнений, як отримати дані до NSViewController, так що він може відображати зміст. Я "" використовую CoreData і я не можу придумати спосіб зробити це.

Відповіді:

1 для відповіді № 1

Тут потрібно зробити кілька кроків:

  1. Переконайтеся, що перегляд таблиці керується a NSArrayController і що ваш контролер для перегляду таблиці (або контролер вікна, або контролер перегляду, або що інше) має це NSArrayController прив'язані до ivar, щоб отримати доступ до нього.

  2. У вашому контролері таблиці встановіть дію подвійного клацання на метод у вашому контролері і встановіть ціль на ваш контролер.

  3. У способі подвійного клацання ви можете отримати доступ до рядка, запитавши -selectedObjects від NSArrayController і що в результаті NSArray повинен мати тільки один елемент у ньому.

Звідти ви можете створити свій детальний перегляд або будь-яке інше, що ви хочете зробити з ним. Ви можете створити аркуш і показати його, відкрити модальне вікно і т.д.


1 для відповіді № 2

Прив'язки какао.
Apple має велике Підручник про створення інтерфейсу Master-Details онлайн.
Скріншоти трохи застаріли, якщо ви використовуєте Xcode 3.2, але це не так вже й відрізняється.

NSViewController має a представляється об'єктом властивість, яка дозволяє прив'язувати до моделі об'єкт, який ви зараз відображаєте.

Редагувати: В ПОРЯДКУ. Моя відповідь не так велика, тому що це лише половина правди.
Незважаючи на те, що він показує, як прив'язати елементи керування в межах детального перегляду, він не надає рішення про те, як прив'язати вибір контролера масиву до контролера подання "s representedObject.
Я був би зацікавлений в прив'язки тільки рішення цієї проблеми.