2012-05-03 35 views
0

我有一個由動態生成的ArrayCollection(並在可回收組件中使用)填充的Flex火花列表。如果數組集合少於9個項目,則應用複選框項目渲染器。如果ArrayCollection大於8個項目,我想恢復爲默認的sparkList項目渲染器。如何從spark列表中刪除itemRenderer?應用自定義項目渲染器後,如何恢復到火花列表中的默認項目渲染器?

if ((ac.length>0)&&(ac.length <=8)) 
{ 
    //implement a renderer in the control for check boxes - this works! 
    this._s_g_ListBoxLong._list.itemRenderer = new ClassFactory(morris.renderers.Renderer_checkBoxes); 
} 
else if (ac.length >=9) 
{ 
    //apply the default item renderer for a spark list or remove the itemRenderer pointer 
    //????? HOW DO I DO THIS? 
} 
else 
{ 
    //do nothing 
} 
this._s_g_ListBoxLong._list.dataProvider = ac; 

回答

0

嘗試使用DefaultItemRenderer

DefaultItemRenderer類定義List控件的默認項呈示器。默認項目渲染器只是繪製與列表中每個項目相關的文本。

this._s_g_ListBoxLong._list.itemRenderer = new ClassFactory(DefaultItemRenderer); 
+0

這樣做伎倆....謝謝,山姆!對於那些喜歡文字代碼的人來說.... this._s_g_ListBoxLong._list.itemRenderer = new ClassFactory(spark.skins.spark.DefaultItemRenderer); – jeep