2012-02-15 3 views
0

Я сейчас рассматриваю приложение, которое реализует перетаскивание иероглима из, возможно, боковой панели или ящика и т. Д. То, что я не могу обернуть вокруг, заключается в том, как сохранить ссылку на объекты, которые я бросаю. Я имею в виду; было бы легко, если бы это просто отбросить объект, а затем оставить его в покое, но я хочу больше манипулировать после этого факта.Фундаментальный перетаскивание в iOS

Мой мозг просто не может обернуть вокруг идеи создания объектов из тонкого воздуха для размещения на «холсте» или с предустановленными объектами (которые, как я полагаю, будет ограниченным, громоздким и неудобным) уже на холсте, который затем просто активизируйте и легко манипулируйте, увидев, что ссылки на них создаются до того факта (мои извинения за ссылку «свободные слова», я имею в виду что-то вроде выбора объекта и наличия его уникальных свойств, признанных или отображаемых).

Должно быть, что-то мне не хватает. Итак, интересно, как можно реализовать перетаскивание с интерфейсом и манипулирование с отброшенным объектом после факта или, возможно, образец кода или ссылку на репозиторий git или svn? (что-то вроде того, как MIT-скрест или построитель интерфейса Xcode может работать).

Для большей ясности, я знаю, как поиграть с перетаскиванием благодаря DragKit, но не об редактировании «свойств» на объекте, выпавшем на «холст», и я хотел бы, чтобы там было почти бесконечное количество объектов, которые можно отбросить на холст, но заданное количество элементов в окне ящика/сбоку.

ответ

1

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

Чтобы сделать что-то подобное, у меня будет NSMutableArray или NSMutableSet, который будет содержать все объекты canvas. Затем, когда возникает какое-либо взаимодействие, вы можете либо динамически генерировать распознаватели жестов, если объекты являются UIView или подклассом. Затем в объекте распознавателя жестов вы должны использовать свойство распознавания.view.

Или вам нужно будет проверить, какой объект на холсте вы в настоящее время управляете. Это будет сделано путем итерации через массив и определения того, какой объект равен тому, с которым вы касаетесь.

Есть ли что-нибудь, что вы пытаетесь сделать, но не работает? Вы писали какой-либо код в попытке сделать это?

+0

У меня нет абсолютно никакого понятия, что я делаю. Примеры DragKit путают меня ... ваша идея правдоподобна, хотя она решает около 1/4 вопроса. +1 – CodaFi

Смежные вопросы