<ScrollView
        android:id="@+id/scrollView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="2">        <ListView
            android:id="@+id/listView1"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_marginLeft="5dp"
            android:layout_marginRight="5dp" >        </ListView>    </ScrollView>
这里面只有一个ListView为何要在外面嵌套一个ScroolView呢?

解决方案 »

  1.   

    我是想实现ListView如果条目很多,可以在一屏幕的中部区域上下滚动。类似网页中部有一个IFrame这种效果,不知是否可行?
      

  2.   

    ListView嵌入到ScrollView里面需要写代码设置ListView的高度俺贡献一个方法你试试:
    /**
     * 设置列表框高度,解决滚屏问题
     * @param listView 列表对象
     * @param addHeight 增加的调节高度,默认是0
     */
    public static void initListViewHeight(ListView listView,int addHeight) {
    Adapter adapter = listView.getAdapter();
    if (adapter == null || adapter.getCount() == 0) {
    ViewGroup.LayoutParams params = listView.getLayoutParams();
    params.height = 0;
    listView.setLayoutParams(params);
    return;
    }
    int totalHeight = 0;
    for (int i = 0; i < adapter.getCount(); i++) {
    View listItem = adapter.getView(i, null, listView);
    listItem.measure(0, 0);
    totalHeight += listItem.getMeasuredHeight();
    }
    ViewGroup.LayoutParams params = listView.getLayoutParams();
    params.height = totalHeight
    + (listView.getDividerHeight() * (adapter.getCount() - 1));
    params.height += 20 + addHeight;
    listView.setLayoutParams(params);
    }
      

  3.   

    如楼上所说,ListView嵌入到ScrollView里,情况比较特殊。高度要算过,但你ScrollView里只有一个ListView的话,高度算好了,ScrollView都可以不需要了
      

  4.   

    ListView 必须设定确定高度,不然套到ScrollView中,就会出现这种问题
      

  5.   

    请问,只能给ListView一个非常确定的高度吗?
      

  6.   

    去掉ScrollView,listView也有滚动条的效果啊