Arhn - архитектура программирования

NSView Перетаскивание данных на контроллер

Я создаю приложение, в котором у меня есть подкласс NSView, который я хочу использовать для перетаскивания. Затем я хочу передать данные из этой операции контроллеру представления для обработки информации и выполнения других задач. Я обнаружил, что не могу реализовать методы перетаскивания из контроллера; Я должен был сделать это из представления. Это означает, что я должен найти хороший способ передать информацию из представления обратно в контроллер.

Моей первой мыслью было попытаться создать функции делегата для представления, а затем попытаться реализовать перетаскивание из контроллера. Это все еще кажется лучшим способом, но я не могу заставить его работать или найти учебник, где это сделал кто-то другой. Поскольку я пытаюсь передать данные обратно, я не думаю, что уведомления будут работать.

Я не включал никакого кода, потому что я все еще нахожусь на концептуальной стадии того, как это сделать. Мне удалось получить информацию из информации о перетаскивании в представлении - проблема в том, куда идти оттуда. Если бы я просто хотел отобразить информацию о перетаскивании в представлении или выполнить другое действие с представлением, то я должен быть установлен. Моя проблема существует, так как я хочу продолжить обработку этой информации.

Итак, мой вопрос в том, как лучше всего передать данные, которые я получаю от перетаскивания, даже обратно в контроллер. Должен ли я продолжать попытки делегировать методы перетаскивания, чтобы я мог получать данные непосредственно в контроллере? Если да, то есть ли у кого-нибудь пример, где это было сделано? Я знаю, что это вопрос новичка, но любая помощь будет принята с благодарностью!

03.07.2011

Ответы:


1

Снова отвечаю на свой вопрос... но это был новичок.

Я сделал свой заголовок контроллера делегатом NSCollectionView, так как это был тип представления, который я использую.

@interface MainViewController : NSViewController <NSCollectionViewDelegate> 

В моем контроллере, проснувшемся от NIB, я установил делегата представления на свой контроллер...

- (void) awakeFromNib{
    [collectionView setDelegate: self];
}

А затем реализовал функции перетаскивания в контроллере, что позволяет мне принимать данные, а затем при необходимости вносить изменения как в представление, так и в бизнес-логику.

06.07.2011
Новые материалы

Коллекции публикаций по глубокому обучению
Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

Представляем: Pepita
Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

Советы по коду Laravel #2
1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

3 способа решить квадратное уравнение (3-й мой любимый) -
1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

Создание VR-миров с A-Frame
Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

Демистификация рекурсии
КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..