如何减少linkButtons和每个linkButton内的空间?
我已将padding设置为0,但它已经为0。 我只能改变LinkButtons的高度,但我不能用宽度来做,因为文本是动态的。
<mx:Repeater id="bookmarksRepeater" dataProvider="{dataManager.bookmarksList}">
<mx:HBox>
<mx:VBox>
<mx:HBox>
<mx:Text >
<mx:text> {String(bookmarksRepeater.currentItem.name)}</mx:text>
</mx:Text>
<mx:LinkButton height="16" rollOverColor="#FFA500" label="Visit" />
<mx:LinkButton height="16" rollOverColor="#FFA500" label="Add" />
<mx:LinkButton height="16" rollOverColor="#FFA500" label="Save" />
</mx:HBox>
<mx:HBox>
<mx:Repeater id="tagsRepeater" dataProvider="{bookmarksRepeater.currentItem.tags}">
<mx:LinkButton height="14" color="0x0033CC" rollOverColor="#FFA500" fontSize="8" label="{String(tagsRepeater.currentItem.name)}"/>
</mx:Repeater>
</mx:HBox>
</mx:VBox>
<mx:Text height="16" color="0x0033CC" fontWeight="bold" >
<mx:text> {String(bookmarksRepeater.currentItem.popularity)} </mx:text>
</mx:Text>
</mx:HBox>
</mx:Repeater>
答案 0 :(得分:5)
您的Repeater位于HBox内部,默认设置为水平间距。要删除此间距,请将horizontalGap设置为0:
<mx:HBox horizontalGap="0">
<mx:Repeater id="tagsRepeater" dataProvider="{bookmarksRepeater.currentItem.tags}">
<mx:LinkButton height="14" color="0x0033CC" rollOverColor="#FFA500" fontSize="8"
label="{String(tagsRepeater.currentItem.name)}"/>
</mx:Repeater>
</mx:HBox>
答案 1 :(得分:0)
要动态设置LinkButtons的宽度,您可能必须通过覆盖容器类的commitProperties来执行此操作,并为每个LinkButton计算文本度量标准:
var m:TextLineMetrics = linkButton.measureText(lb.label);
然后,您应该能够使用计算的指标为每个LinkButton设置精确的宽度值。
另一种方法是在LinkButton上侦听labelChanged事件,然后在侦听器中强制重新计算宽度。