topLevelApplication 대신 Stage에서 수신 대기하십시오.
(FlexGlobals.topLevelApplication as Application).stage.addEventListener(MouseEvent.MOUSE_MOVE, resetLastActivity);
(FlexGlobals.topLevelApplication as Application).stage.addEventListener(KeyboardEvent.KEY_DOWN, resetLastActivity);
업데이트 :
에 보관 난 당신이 그런 짓을해야합니다, 그래서 topLevelApplication 공식적 개체를 반환 생각 topLevelApplication
에 stage property를 사용하여 무대에 액세스 해당 구성 요소의 creationComplete 이벤트가 발생하기 전까지 스테이지가 topLevelApplication에 설정되어 있지 않습니다. 비 UI 클래스의 스테이지에 이벤트 리스너를 추가하는 경우 topLevelApplication에서 creationComplete가 시작될 때까지이 작업이 완료되지 않았는지 확인해야합니다.
이렇게하려면 생성자의 topLevelApplication의 creationComplete 메서드에 이벤트 수신기를 추가합니다.
(FlexGlobals.topLevelApplication.addEventListener(FlexEvent.CREATION_COMPLETE, onCreationCompete);
MXML UIComponent 인 경우 해당 코드를 생성자 대신 preinitialize 이벤트 처리기에 추가 할 수 있습니다.
public function onCreationComplete(event:FlexEvent):void{
(FlexGlobals.topLevelApplication as Application).stage.addEventListener(MouseEvent.MOUSE_MOVE, resetLastActivity);
(FlexGlobals.topLevelApplication as Application).stage.addEventListener(KeyboardEvent.KEY_DOWN, resetLastActivity);
}
그게 제가 직면 한 문제입니다. 당분간 나는 모든 팝업을 추적하고 있으며 타임 아웃을 위해 eventlisteners를 추가하고 있습니다. –