Пересчет члена библиотечного класса на новый тип в расширенном классе - PullRequest
2 голосов
/ 14 октября 2010

Я создал видеоплеер flv с помощью Flash Builder 4. Этот проект «BasicVideoPlayer» скомпилирован в SWC, который в конечном итоге будет использоваться для создания других видеоплееров, которые расширяют функциональность.Одной из функций является вид, который появляется после завершения воспроизведения видео, который отображает кнопку «Воспроизвести снова».Это представление «Воспроизвести» имеет собственный класс «BasicPlayAgain», который принимает графический актив, экспортируемый из файла .fla, который содержит все графические ресурсы / ресурсы пользовательского интерфейса.

В моем новом проекте »EnhancedVideoPlayer ", я использую BasicVideoPlayer SWC в качестве библиотеки для создания нового видеопроигрывателя, который добавит больше функциональности в представление« Воспроизвести снова »;в частности, он добавит больше кнопок в это представление.

EnhancedVideoPlayer использует класс по умолчанию, который расширяет класс BasicVideoPlayer.Класс BasicVideoPlayer имеет член с именем playAgainScreen, типом которого является BasicPlayAgain.EnhancedVideoPlayer необходимо переопределить элемент playAgain и преобразовать его в EnhancedPlayAgain, чтобы он мог правильно управлять новыми кнопками.

Как мне переопределить элемент playAgain как новый тип?Или я подхожу к этому с неправильного направления?

1 Ответ

1 голос
/ 15 октября 2010

Одним из возможных решений является то, что если объект EnhancedPlayAgain расширяет BasicPlayAgain, вы все равно можете сохранить его в переменной playAgainScreen и затем при необходимости вернуть обратно в EnhancedPlayAgain.

EnhancedPlayAgain(playAgainScreen).someAdditionalMethod();
...