|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Элегантно распарсить клип на элементы и отдать полученное
Здравствуйте все. Хочется элегантно решить ситуацию:
имеем swc с одним клипом, в нем куча мелких клипов-элементов. Целесообразно ли создавать отдельный класс со статическим (?) методом для парсинга этого клипа на составляющие? И как в таком случае отдавать полученное логике программы? Был вариант формировать Object, в логике парсить его. Но это двойная работа и, хоть, парсинг самого интерфейса будет сидеть красиво в отдельном не менее красивом классе, парсинг же конечно обджекта кажется каким-то нерациональным и портит всю элегантность. Хотелось бы узнать мнения знающих людей.
__________________
тут я |
|
|||||
я просто беру инстансы визуальных классов из свц, и скармливаю их некойоболочке, которая сверу накладывает логику.
_view = new Game_View(); // клип из свц addChild(_view); _controller = new Game_Controller(_view); // класс с логикой _controller.show = false; зачем вам статика я правда не понял( Последний раз редактировалось nOobCrafter; 21.01.2011 в 03:36. |
|
|||||
ну его же еще можно разбить, вам же не обязательно в одном классе хранить всю логику элементов? нашли там клип для меню, скормили менюшной логике, а та в свою очередь разобрала все по кнупочкам.
|
|
|||||
Не сосем понятна суть вопроса... Можно как то, пример что ли привести?
Добавлено через 6 минут Если речь идет о интерфейсе и MVC. То тут, мне кажется, лучше всего подходит вариант, когда мы наш вью наследуем от клипа, а затем уже непосредственно наследнике настраиваем связку с моделью и контроллером. Таким образом контроллер минимум знает о содержимом view... К примеру это все таки эпархия view, а не контроллера.
__________________
Искренне Ваш, Джек. Последний раз редактировалось JackFromChaos; 21.01.2011 в 03:57. |
|
|||||
Все равно я не до конца понял суть проблемы.
Лично я, обычно, накладываю логику путем наследования от графического клипа, и далее через публичные переменные которые там есть для всех членов(без getChildByName). Так же иногда делаю всякие утилитные классы, ну например очень простой вариант: public class Btn { private var _owner:Sprite; private var _label:TextField; public function Btn(owner:Sprite,text:String,onClick:Function) { _owner = owner; _owner.useHandCursor = true; _owner.buttonMode = true; _label = _owner.getChildByName("label") as TextField; if (_label) { _label.text = text; _label.mouseEnabled = false; } _owner.addEventListener(MouseEvent.CLICK, onClick); } public function get text(): String { if (!_label) return null; return _label.text; } public function set text(value:String):void { if (_label) _label._text = value; } } Сохранять ли указатель на Btn – вопрос уже чисто ситуационный... По разному может быть. к P.S. Пример, естественно, синтетический, но очень похожий на реальный код...
__________________
Искренне Ваш, Джек. Последний раз редактировалось JackFromChaos; 21.01.2011 в 04:18. |
|
|||||
Нет, вы поняли неправильно
Мне нужно всего лишь распарсить один клип из swc на составляющие и скормить его содержимое разным вещам. Как это сделать лучше моего варианта, мне уже посоветовал nOobCrafter. Но если есть и другие способы - я буду рад их выслушать тоже, авось будет что-то оптимальнее и эстетичнее
__________________
тут я |
|
|||||
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
А что значит "распарсить и скормить"?
Логика программы как потом с этими классами работает? Она знает их по именам? |
Часовой пояс GMT +4, время: 20:49. |
|
« Предыдущая тема | Следующая тема » |
|
|