Тема: MVC менюшка
Показать сообщение отдельно
Старый 06.06.2014, 20:23
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 5  
Ответить с цитированием
in4core
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
2misha - и тут тоже MVC не нужен, опять же стандартный вью. Максимум M+V. Не более. Я щас обстрагируюсь от того, что это меню и просто по коду буду править.

Код AS3:
public class Menu extends Sprite
	{
 
		public function Menu(): void
		{
			const control:Controller = new Controller(this)
		}
	}
Код AS3:
public function Controller(host:Sprite): void
		{
			_host = host;
                        _view.model = _model;
                        _host.addChild(_view);
 
		}
Код AS3:
public function View(): void
		{
                     addEventListener(Event.ADDED_TO_STAGE , onAdded);
		}
private function onAdded(e:Event)  :void
{
        //app started
}
Это по организации кода.
Теперь о бредовых ошибках :

Код AS3:
public function Controller(rModel: Model): void
		{
			_model = rModel;
 
			this.addEventListener(Event.ADDED_TO_STAGE, addPage);
		}
public function Model(): void
		{
			_dostype = "guest";
			_currentPage = Description;
 
			this.addEventListener(Event.ADDED_TO_STAGE, addPage);
		}
Ни один ни второй не DO. Поэтому событие Event.ADDED_TO_STAGE у них недоступно. В ините моделе подписки не делаются, в ините контроллера - можно.
Дальше просто не стал читать, пока разбиритесь со структурой
__________________
Марк Tween