2

我已经成功设置了一个列表,该列表从数据库中提取用户并将它们显示在列表中。我目前正在使用 itemrenderer 自定义列表,并且进展顺利。我可以拉出一个用户的头像,然后在它的右边我会显示他们的名字,下面是他们的年龄。问题是我只能将 4 个结果放入列表中,并且我可以看到第 5 个的顶部,但是没有滚动条。我会显示一个打印屏幕,但我在我的数据库中填充了关于我的朋友和他们的 Facebook 详细信息的真实信息,所以我宁愿不这样做。

在我的主 mxml 程序中,我有以下代码:

<s:List id="resultList" includeIn="loggedin" x="120" y="246"
      width="100%" itemRenderer="userList">   
    <s:layout>  
        <s:VerticalLayout useVirtualLayout="true" requestedMinRowCount="1"/>  
    </s:layout>  
    <s:AsyncListView list="{getUserResult.lastResult}"/>  
</s:List>

userList.mxml我有以下代码:

<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/mx" 
                autoDrawBackground="true">  
    <s:Image id="fbImg" source="http://graph.facebook.com/{data.facebookid}/picture?type=normal" x="0" y="0"/>  
    <s:Label id="usernameLbl" x="120" y="0" fontFamily="Calibri" fontSize="25" fontWeight="bold" text="{data.firstname} {data.lastname}"/>  
    <s:Label id="ageLbl" text="{data.dob}" x="120" y="40" />  
</s:ItemRenderer>

有人知道为什么我不能滚动所有结果吗?我敢肯定这是我不知道的非常简单的事情。
编辑:我很抱歉这种可怕的格式。我似乎无法让我的代码很好地显示。

4

2 回答 2

2

为您的列表分配一个高度,世界上一切都将是正确的。如果你不这样做,它假定它可以延伸到页面底部以显示所有数据,即使你看不到它。

<s:List id="resultList" includeIn="loggedin" x="120" y="246"
  width="100%" height="100%" itemRenderer="userList">   
<s:layout>  
    <s:VerticalLayout useVirtualLayout="true" requestedMinRowCount="1"/>  
</s:layout>  
<s:AsyncListView list="{getUserResult.lastResult}"/>  

PS 很好的问题,有很多细节和完美的代码量。

于 2012-05-08T20:57:18.290 回答
1

List 看到百分比高度(height="100%")时遇到问题。因此,我必须使用诸如 height="{myContainer.height}" 之类的东西来设置它并且它起作用了。

于 2013-08-08T04:26:25.393 回答