如何在Android视图中对联系人进行分组?

时间:2014-05-22 14:00:12

标签: android android-layout

我目前希望在显示联系人时使用类似于SnapChat的UI。

SnapChat contacts

换句话说,我想在可滚动视图中使用两个部分。

Android中的这个元素是什么?

2 个答案:

答案 0 :(得分:1)

看起来你想在两个列表视图中使用这样的布局:

<LinearLayout
   android:id="@+id/layoutContainingTwoLists"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >


   <RelativeLayout
        android:id="@+id/inContactsLayout"
        layout_width="match_parent"
        layout_height="0dp"
        layout_weight="1"
        >

            <TextView
                android:id="@+id/inContactsText"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="SNAPCHATTERS IN MY CONTACTS"
                />

           <!--  YOU POPULATE THIS LISTVIEW WITH THE "SNAPCHATTERS IN CONTACTS" LIST -->
            <ListView 
                android:id="@+id/inContactsList"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/inContactsText"
                android:layout_alignParentBottom="true"
                >
            </ListView>
   </RelativeLayout>
   <RelativeLayout
        android:id="@+id/notInContactsLayout"
        layout_width="match_parent"
        layout_height="0dp"
        layout_weight="1"
        >
           <TextView
                android:id="@+id/notInContactsText"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="INVITE CONTACTS"
                />

           <!--  YOU POPULATE THIS LISTVIEW WITH THE "NOT IN CONTACTS" LIST -->
            <ListView 
                android:id="@+id/notInContactsList"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/notInContactsText"
                android:layout_alignParentBottom="true"
                >
            </ListView>

   </RelativeLayout>

</LinearLayout>

答案 1 :(得分:1)

我不知道您是否考虑过这一点,但使用ExpandableListView可能会更好。 ExpandableListView允许您为群组(即部分的标题)指定Views,为群组的子项指定不同的View

以下是Github repo,我为Adapter实施ExpandableListView,您可以将其作为参考。