2010-08-03 2 views
0

저는 Flex 목록과 사용자 정의 ItemRenderer가 있습니다. 나는 을 가지고 싶습니다. 목록에있는 일부 항목은 다른 ItemRenderer를 사용합니다 (예 : 항목의 클래스에 따라 다름). 이것이 가능한가?다른 목록 항목에 다른 ItemRenderer를 사용할 수 있습니까?

예컨대 : _systems에서

<s:List dataProvider="{_systems}" itemRenderer="myItemRenderer"/> 

대부분의 항목은 myItemRenderer를 사용합니다. 그러나 _systems의 요소 3이 "specialSystem"이면 렌더러는 "specialItemRenderer"가됩니다.

이것이 가능합니까?

답변

1

Canvas를 ItemRenderer로 사용하고 다른 컨트롤을 자동으로 생성하는 메커니즘을 구현합니다. Different Items renderers in List

주요 아이디어 :

당신은 다른 컨트롤을 "모방"을 만들 수 있습니다 특수의 itemRenderer를 만들이, 우리의 경우 그것의 서브 클래스

자세한 내용은이 문서에서 찾을 수 있습니다 Canvas 은 단순히 원하는 컨트롤을 만들고 추가합니다. 그런 다음 우리가 컨테이너 을 에뮬레이트하기를 원한다면 특별한 필드를 사용하십시오.

+1

이것이 Flex 3의 Halo 목록에 대한 유일한 접근 방법입니다. 그러나 Flex 4는 훨씬 깨끗한 구현을 제공하는 itemRendererFunction을 도입했습니다. – JeffryHouser

관련 문제