를 정의 할 수 있습니다 그대로 당신은 같은 똑똑한의 itemRenderer를 구현 할 수 있도록
, 그것은, 클래스 이름을 통해 액세스 설정중인 데이터에 따라 상태를 다시 작성해야했습니다. 반면에 데이터에 필요한 모든 것이 포함되어 있는지 확인하십시오. 렌더러 자체와 다른 범위에서 렌더러와 상호 작용하기를 간절히 원할 것입니다.
렌더러가 추가 될 때 필요한 경우 DataGroup이 RendererExistence 이벤트를 전달합니다.
private function newList():List {
const list:List = new List();
list.addEventListener(FlexEvent.INITIALIZE, list_initializeHandler);
return list;
}
private function list_initializeHandler(event:FlexEvent):void {
const listBase:ListBase = ListBase(event.target),
dataGroup:DataGroup = listBase.dataGroup;
dataGroup.addEventListener(RendererExistenceEvent.RENDERER_ADD, dataGroup_rendererAddHandler);
dataGroup.addEventListener(RendererExistenceEvent.RENDERER_REMOVE, dataGroup_rendererRemoveHandler);
}
private function dataGroup_rendererAddHandler(event:RendererExistenceEvent):void {
// renderer added
}
private function dataGroup_rendererRemoveHandler(event:RendererExistenceEvent):void {
// renderer removed
}
단일 항목 렌더러 인스턴스를 참조해야하는 경우 이동하는 방법입니다.
이것은 답변이거나 다른 사람의 답변에 대한 의견입니까? – JeffryHouser
@ www.Flextras.com '물론 대답입니다. 왜 다른 사람의 대답에 대한 논평이 될까요? –
질문을하고 정적 변수/함수에 대해 이야기합니다. itemRenderer에서 메소드를 실행하는 것과 관련이 없습니다. 아마 당신이 다른 대답에 세부 사항을 추가하려한다고 생각했을 것입니다. – JeffryHouser