내가 결국 이것에 대한 답을 찾았습니다. 문제는 FLVPlayback 구성 요소가 stage.fullScreenSourceRect 속성을 사용하여 하드웨어 확장 된 전체 화면 모드로 들어가는 것입니다. 그렇게하면 무대 나 구성 요소의 크기를 늘리는 대신 stage.fullScreenSourceRect에 의해 지정된 렌더링 된 영역이 화면을 채우도록 펼쳐집니다.
중지하려면 UIManager의 하위 클래스를 사용하는 FLVPlayback의 하위 클래스를 만들고 stage.fullScreenSourceRect를 설정하는 함수를 재정의해야합니다. 아래쪽에서는 하드웨어 확장을 잃을 수 있습니다. 그러나 위쪽면에서는 플레이어가 3 살짜리 크레용으로 그려진 것처럼 보이지 않습니다.
CustomFLVPlayback.as :
import fl.video.*;
use namespace flvplayback_internal;
public class CustomFLVPlayback
{
public function CustomFLVPlayback()
{
super();
uiMgr = new CustomUIManager(this);
}
}
CustomUIManager.as :
import fl.video.*;
import flash.display.StageDisplayState;
public class CustomUIManager
{
public function CustomUIManager(vc:FLVPlayback)
{
super(vc);
}
public override function enterFullScreenDisplayState():void
{
if (!_fullScreen && _vc.stage != null)
{
try
{
_vc.stage.displayState = StageDisplayState.FULL_SCREEN;
} catch (se:SecurityError) {
}
}
}
}
우리는 액션 스크립트를 사용하여 우리의 영화에 FLVPlayback 구성을 추가, 그래서 우리는 단지와
var myFLVPLayback:FLVPlayback = new FLVPlayback();
를 교체해야
var myFLVPLayback:CustomFLVPlayback = new CustomFLVPlayback();
구성 요소 라이브러리에서 사용자 지정 클래스를 사용할 수 있는지 여부를 알 수 없습니다.
어떤 OS 당신은에입니까? – Oli
Windows에서 개발 중입니다. Flash CS3에서 개발중인 AS3 플래시 무비입니다. 클라이언트는 주로 창을 사용하지만 상당한 비율은 Mac을 사용합니다. – Simon