![]() |
Как вызвать свой метод не приводя к типу
Здравствуйте, коллеги по цеху!
Есть менеджер объектов. На вход ему подаётся ссылка на объект. Подаваемые объекты экземпляры разных классов, но в любом случае эти классы расширяют (extends) Sprite. Менеджер должен в каждом объекте в процессе работы с ним запускать метод. Делаю так: currentPage.setPause(true); (currentPage - ссылка на объект). Но конечно ругается FlashDevelop: Error: Call to a possibly undefined method setPause through a reference with static type flash.display:DisplayObject. Всегда в таком случае привожу к типу: (currentPage as SimplePage).setPause(true); Но в этом случае объект может быть нескольких типов. Уважаемые, подскажите изящное решение. Нет желания огород городить. |
Цитата:
Плохой способ. Приводите к Object, ругаться перестанет. |
Точно. Освоился с интерфейсами, но ошибка осталась.
Вот код интерфейса: Код AS3:
Код AS3:
|
а в классах указали, что они реализуют этот интерфейс?
|
Да.
Код AS3:
|
Код AS3:
|
В точку!
Заработало ) Благодарю! |
@cleptoman а вот поясните с фигали приводить к типу если implements все же сделал? поидее и без типа должно работать! странно
|
а с фигали он все сделал, если _tempNewPage был объявлен как другой тип?
|
Цитата:
|
| Часовой пояс GMT +4, время: 10:49. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.