2013-03-25 97 views
-1

我想增加列表中單元格之間的間隙大小,使它們不會彼此重疊。我知道有m_list.setStyle("contentPadding", 5),但只調整列表的邊緣而不是單個單元格的差距。同樣調整列表上的rowHeight不會影響相鄰單元格之間的空隙。我似乎無法找到有關這方面的資源。列表組件 - 更改單元格之間的間隙大小

在此先感謝。

回答

1

它不支持api。您可以創建自己的List extends fl.controls.List並使用rowHeight的技巧,請參閱:

package 
{ 
    import fl.controls.List; 
    import fl.controls.listClasses.CellRenderer; 

    public class MyList extends List 
    { 

     public var gap:Number = 5; 

     public function MyList() 
     { 
      super(); 

      rowHeight += gap; 
     } 

     override protected function draw():void 
     { 
      super.draw(); 
      updateRenderer(); 
     } 

     protected function updateRenderer():void 
     { 
      var renderers:Array = availableCellRenderers.concat(activeCellRenderers); 
      var l:uint = renderers.length; 

      for (var i:uint=0; i<l; i++) 
      { 
       var renderer:CellRenderer = renderers[i]; 

       if (i > 0) 
       { 
        renderer.y += gap; 
       } 

       renderer.setSize(availableWidth+_maxHorizontalScrollPosition,rowHeight - gap); 

       renderer.drawNow(); 
      } 
     } 
    } 
} 
相關問題