2014-02-07 7 views
0

100 개의 항목이있는 목록을로드하는 데 오랜 시간이 걸리는 문제가 있습니다. 사전 생성 된 arraycollection을 사용하여 데이터 공급자에게 전달하고 사용자 정의 항목 렌더러는 중첩 된 컨테이너로 구성됩니다. 내가 이것을 list.dataProvider = arraycollection;이라고 부르는 순간, 약 4 초 동안 얼른 다음 목록 만 나타납니다.큰 오버 헤드 데이터 세트가있는 Flex 모바일 목록

이 문제를 해결할 수있는 대안이 있습니까?

다음

내 코드입니다 :

이 내 목록 구성 요소입니다

private function populateList():void 
     { 
      array = new Array(); 

      for (var i:int =0;i<100;i++) 
      { 
       array.push({ 
        dateLabel:"LIVE", 
        timeLabel:"06:05", 
        homeTeamLabel:"Liverpool", 
        homeScoreLabel:"1", 
        awayScoreLabel:"0", 
        awayTeamLabel:"Chelsea", 
        homeTeamHandicapLabel:"Liverpool", 
        homeHandicapLabel:"2/5", 
        awayTeamHandicapLabel:"Chelsea", 
        awayHandicapLabel:"", 
        priceHomeHandicapLabel:"1.950", 
        priceAwayHandicapLabel:"1.950" 
       }); 
      } 

      trace("done loading"); 

      testarr = new ArrayCollection(array); 

      liveList.dataProvider = testarr; 
     } 

[편집] :

<s:Scroller width="100%" height="100%" horizontalScrollPolicy="off"> 
    <s:VGroup id="lists" gap="0" left="0" right="0" top="0" bottom="0"> 
     <s:List id="liveList" width="100%" itemRenderer="customItemRenderer" creationComplete="populateList()" 
       contentBackgroundColor="0xf0f0f0" useVirtualLayout="true" depth="0" horizontalScrollPolicy="off" verticalScrollPolicy="off"> 
      <s:layout> 
       <s:VerticalLayout gap="0" variableRowHeight="true" requestedMinRowCount="1" useVirtualLayout="true"/> 
      </s:layout> 

     </s:List> 
    </s:VGroup> 
</s:Scroller> 
+1

더 많은 코드를 표시해야합니다. – jeremyjjbrown

+0

대상으로 지정할 장치를 지정하십시오. 이 문제는 장치에서 발생합니까? 에뮬레이터에서? 그것은 디버그 빌드 또는 릴리스 빌드인가요? – JeffryHouser

+0

주석 주셔서 감사합니다, 내 코드가 추가되었습니다. 그것은 안드로이드 장치에 대한 릴리스 빌드입니다. –

답변

0

그것은 내가 목록을 포장 할 때 성능이 저하되는 것으로 나타났다 스크롤러와 VGroup. 둘 다 제거하면 목록이 잘로드됩니다.