Android创建列表列表

时间:2010-10-27 11:56:38

标签: android

我正在开发应用程序,其中我需要创建一个列表列表。例如

EmployeeGroup1 GroupName,GroupId,JobType Empployee1名称,名称 Empployee2名称,名称 Empployee3名称,名称 Empployee4名称,名称 EmployeeGroup2 GroupName,GroupId,JobType Empployee5名称,名称 Empployee6名称,名称 Empployee7名称,名称 Empployee8名称,名称 ......等等

本案例中的员工详细信息是从SQLite数据库中检索的。员工组是固定的(5)。因此,我创建了5个相对布局组,并将每个列表视图放入delow

        <RelativeLayout
        android:id="@+id/ltGroup1"          
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">   
           <TextView android:text="GroupName:" 
            android:id="@+id/lblGroupName_1" 
            android:layout_width="80dip" 
            android:layout_height="25dip"
            android:layout_alignParentLeft="true"
            android:textColor="@color/BLACK"
            android:textSize="14dip"      
            android:textStyle="bold"  
            android:paddingLeft="5dip"
            android:gravity="center" />  
            <TextView android:text="0 cal" 
            android:id="@+id/txtGroupName_1"
            android:layout_width="75dip" 
            android:layout_height="25dip"
            android:layout_toRightOf="@+id/lblGroupName_1"
            android:textColor="@color/TITLEBAR_TABS"
            android:textSize="13dip"    
            android:textStyle="bold"
            android:paddingRight="5dip"          
            android:gravity="right|center_vertical" />             
            <ListView android:id="@+id/lstEmployeeGroup_1"
             android:layout_width="fill_parent"
             android:layout_height="wrap_content"
             android:fadingEdge="none"               
             android:background="#ffffff"     
             android:scrollbars="none"
             android:divider="#ffcccccc"
             android:dividerHeight="1dip"
             android:layout_below="@+id/lblGroupName_1"/>                
        </RelativeLayout>  

如果我将所有相对布局组放在LineraLayout中,然后在滚动视图中,员工列表只显示一个项目,并且看到其他项目,我需要滚动浏览个人列表。当屏幕已满时,滚动视图开始滚动,然后我也无法滚动浏览单个列表,使其变得更糟。 有没有一种方法,员工列表将始终显示所有记录,而不是只显示一个?

2 个答案:

答案 0 :(得分:1)

Listview无法显示所有记录,即使将其设置为fill_parent的高度也是如此。当项目超过其显示时,它会自动滚动 您可以将每个列表的高度固定为特定的dp,以便它可以显示特定数量的记录。

答案 1 :(得分:0)

现在已经解决了。 Maneesh的线索帮助我做到了正确。 需要使用LayoutParams属性在runtim上设置ListView的高度。 我所做的是修复单个列表项的高度,并根据项目数量计算运行时所有项目的总高度,并将该值设置为listview的高度。这对我来说很有用。现在,列表根据项目数量调整高度。