2012-11-28 82 views
2

我有两个列表视图。two listViews in one activity

我遇到的问题是屏幕滚动,直到较小(高度)的listview达到底部。
如何扩展包含视图,以便我可以滚动到更长的listView的底部?

我重载onScroll同时滚动两个列表。

public void onScroll(AbsListView view, int firstVisibleItem, 
     int visibleItemCount, int totalItemCount) { 

     super.onScroll(view, firstVisibleItem, visibleItemCount, totalItemCount); 
     if (view.getChildAt(0) != null) { 
      if (view.equals(m_lv1)){ 
       m_lv2.setSelectionFromTop(view.getFirstVisiblePosition(), 
        view.getChildAt(0).getTop()); 
      } else if (view.equals(m_lv2)){ 
       m_lv1.setSelectionFromTop(view.getFirstVisiblePosition(), 
        view.getChildAt(0).getTop()); 
      } 
     } 
    } 


<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="horizontal" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <ListView 
     android:id="@+id/list_view_left" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:scrollbars="none" 
     android:layout_weight="1" > 
    </ListView> 

    <ListView 
     android:id="@+id/list_view_right" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" > 
    </ListView> 
</LinearLayout> 
+0

你称之为小的列表是两个中最小的一个,一个项目较少,无论左右位置? – Snicolas

+0

这是正确的Snicolas – eugene

+0

你是如何超载滚动? – Snicolas

回答

2

你必须设置listview的高度... like。

<ListView 
     android:id="@+id/list_view_left" 
     android:layout_width="fill_parent" 
     android:layout_height="120dp" 
     android:scrollbars="none" 
     android:layout_weight="1" > 
    </ListView> 

    <ListView 
     android:id="@+id/list_view_right" 
     android:layout_width="fill_parent" 
     android:layout_height="120dp" 
     android:layout_weight="1" > 
    </ListView> 
1

使用下面的XML代码,而不是你的代码。

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 

    <ListView 
     android:id="@+id/list_view_left" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" > 
    </ListView> 

    <ListView 
     android:id="@+id/list_view_right" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" > 
    </ListView> 
</LinearLayout> 
相关问题