Android 一个活动中有两个列表视图

Android 一个活动中有两个列表视图,android,listview,scroll,Android,Listview,Scroll,我有两个列表视图 我遇到的问题是屏幕一直滚动,直到较小(高度)的listview到达底部。 如何展开包含视图,以便滚动到较长listView的底部 我重载了onScroll以同时滚动两个列表 public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { super.onScroll(view, firstVi

我有两个列表视图

我遇到的问题是屏幕一直滚动,直到较小(高度)的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>
public void onScroll(AbsListView视图,int firstVisibleItem,
int visibleItemCount,int totalItemCount){
super.onScroll(视图、firstVisibleItem、visibleItemCount、totalItemCount);
if(view.getChildAt(0)!=null){
if(视图等于(m_lv1)){
m_lv2.setSelectionFromTop(view.getFirstVisiblePosition(),
view.getChildAt(0.getTop());
}else if(视图等于(m_lv2)){
m_lv1.setSelectionFromTop(view.getFirstVisiblePosition(),
view.getChildAt(0.getTop());
}
}
}

您必须设置listview的高度…如

<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>

使用下面的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>


你所说的较小列表是两个列表中最小的一个,即项目较少的列表,无论其左右位置如何?你是如何重载onScroll的?在我看来,这似乎很糟糕。我见过第一个列表视图仅占顶部屏幕25%的设计。然后第二个列表占75%。但我从来没有看到过一个列表排到底部,然后开始一个新的不同列表。:@杰拉尔德·戈德罗的名单在这里是水平的。检查父布局。