2010-03-18 75 views
1

我有它的按钮,像这样一个列表项:软硬度:列表项之间的垂直间距不工作

<mx:List contentBackgroundAlpha="0" baseColor="0x333333" leading="10" id="weekButtonList" width="260" borderVisible="false" dataProvider="{[email protected]}" itemClick="onWeekClick(event);" > 
       <mx:itemRenderer > 
        <mx:Component> 
         <mx:Button buttonMode="true" width="260" height="50" label="Week {data}" /> 
        </mx:Component> 
       </mx:itemRenderer> 
      </mx:List> 

不管我做什么,这些按钮有一个垂直间隙其间他们。我已经尝试了所有事情,从设置“垂直差距”属性到负数和正数以及更改填充底部和填充顶部。我想让这些按钮垂直对抗彼此。我也尝试过“按钮高度”和List组件上的填充...仍然没有。我如何控制这个?

回答

2

尝试按钮paddingToppaddingBottom设置为0

+0

是啊,试过了,没有按;吨的工作。还有一个缺口。它在按钮皮肤中吗? – pfunc

+0

没关系,如果我在列表项和按钮上执行它,谢谢。 – pfunc

+0

这将是我的下一个建议:)很高兴为你工作 – Jason

7

如果你能建立在FLEX4项目,而不是3.x中下面的解决方案将适用:

<?xml version="1.0" encoding="utf-8"?> 
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
      xmlns:s="library://ns.adobe.com/flex/spark" 
      xmlns:mx="library://ns.adobe.com/flex/halo" minWidth="1024" minHeight="768"> 

<s:List contentBackgroundAlpha="0" baseColor="0x333333" id="weekButtonList" width="260" borderVisible="false" itemRenderer="ListButton"> 
    <s:layout> 
     <s:VerticalLayout gap="0"> 
     </s:VerticalLayout> 
    </s:layout> 
    <s:dataProvider> 
     <s:ArrayList> 
      <fx:Array> 
       <fx:Object label="No Gap" /> 
       <fx:Object label="No Gap" /> 
       <fx:Object label="No Gap" /> 
       <fx:Object label="No Gap" /> 
       <fx:Object label="No Gap" /> 
       <fx:Object label="No Gap" /> 
       <fx:Object label="No Gap" /> 
       <fx:Object label="Still No Gap" /> 
      </fx:Array> 
     </s:ArrayList> 
    </s:dataProvider> 
</s:List> 

在你的应用程序文件

在ListButton.mxml

<?xml version="1.0" encoding="utf-8"?> 
<s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009" 
      xmlns:s="library://ns.adobe.com/flex/spark" 
      xmlns:mx="library://ns.adobe.com/flex/halo" width="100%" height="100%"> 
<fx:Declarations> 
    <!-- Place non-visual elements (e.g., services, value objects) here --> 
</fx:Declarations> 

<s:Button label="{data.label}" /> 

如果Flex 4是一个选项,我强烈建议做开关。

1

要添加到greg的答案,一些布局使用verticalGap和horizo​​ntalGap(如果适用)。

<s:List> 
    <s:layout> 
     <s:TileLayout verticalGap="-2" /> 
    </s:layout> 
</s:List> 

我觉得默认为0(零)