如何设置Spark List高度到其内容的高度?Flex 4:将Spark List高度设置为其内容高度
尝试这样:
var lastRow:IVisualElement =
myList.dataGroup.getElementAt(myList.dataGroup.numElements - 1);
myList.height = lastRow.y + lastRow.height;
它可以在一个单一的项目的情况下,但LASTROW是在多个项目的情况下空。
如何设置Spark List高度到其内容的高度?Flex 4:将Spark List高度设置为其内容高度
尝试这样:
var lastRow:IVisualElement =
myList.dataGroup.getElementAt(myList.dataGroup.numElements - 1);
myList.height = lastRow.y + lastRow.height;
它可以在一个单一的项目的情况下,但LASTROW是在多个项目的情况下空。
在MXML中,您可以像这样:
<s:List width="100%">
<s:layout>
<s:VerticalLayout useVirtualLayout="false" requestedMinRowCount="1"/>
</s:layout>
</s:List>
您设置requestedMinRowCount个或requestedRowCount布局列表内。它也吸引了我。希望有所帮助。
对于TileList中我做了这样的:
<s:List width="100%" height="{(tilelayout.rowCount * tilelayout.rowHeight) + ((tilelayout.rowCount - 1) * tilelayout.verticalGap)}">
<s:layout>
<s:TileLayout id="tilelayout" rowHeight="190" columnWidth="130" horizontalGap="5" verticalGap="10" />
</s:layout>
</s:List>
public class MyTileLayout extends TileLayout
{
override public function updateDisplayList(w:Number, h:Number):void
{
super.updateDisplayList(w,h);
target.height = rowCount*rowHeight + verticalGap*(rowCount - 1);
}
}
,也可以扩展你的TileLayout :)
试试这个布局 - 定期列表
<s:layout>
<s:VerticalLayout horizontalAlign="contentJustify"
gap="0"
verticalAlign="middle"
variableRowHeight="false"/>
</s:layout>
最简单的方法要做到这一点
height="{list.dataGroup.contentHeight}"
我试图让这个与TileLayout一起工作,但没有为TileLayout请求最小数量。我想知道如何在使用TileLayout时为列表动态设置高度,以便列表只占用需要显示行的空间? – 2011-08-30 18:03:56