2011-05-13 4 views
0

List 구성 요소의 각 아이콘에 스타일을 지정하려고합니다.목록에있는 아이콘의 스타일을 설정하는 방법 List [Flex 3]

전통적인 예를 들어, 데이터의 "아이콘"속성의 값을 읽어 아이템 렌더러의 아이콘 필드를 사용하는 것입니다 아이콘을 할당하는 방법 : 내가 원하는

listData.addItem({label: "Logout", icon: "com.classpth.DefualtThemeLogoutIconClass"}); 

그러나 DefualtThemeLogoutIconClass에서 다른 클래스로 변경 : 테마가 변경되면 LightThemeLogoutIconClass.

이 작업을 수행하는 유일한 방법은 아이콘에 대한 classReference가 포함 된 스타일 선언을 사용하고 다양한 테마의 각 CSS 파일에서 해당 값을 변경하는 것입니다. 질문은

, 목록에 아이콘이 스타일을 지정할 수있는 방법은 당신이 아이콘 스타일 목록을 확장하는 것이 좋습니다 list[0].getIcon().setStyle("styleName"); 직관적으로 쉽게, 뭔가

감사

답변

0

이 있고 가능성이있는 사용자 정의 Item 렌더러를 사용하여 아이콘을 전환하십시오. 따라서 rendererIcon 목록의 스타일이 변경되면 invalidateDisplayList() (목록의 styleChanged())을 호출 한 다음 updateDisplayList()에 모든 렌더러를 반복하고 새 아이콘을 할당합니다.

+0

나는 실제로 당신의 충고를 생각하고있었습니다. 나는 각 아이콘에 대해 자신의 스타일 속성을 메타 태그로 정의했다. 그러나 당신이 제안한 것과는 달리, 그리고 런타임 중에는 아이콘의 스타일이 변하지 않기 때문에 스타일 값을 가져 와서 목록 초기화 중에 아이콘에 할당했습니다. 문제가 해결되었습니다. 조언 해주셔서 감사합니다 :) – Mathiew

관련 문제