0

为什么列表视图中有滚动条,即使其中显示的数据不需要滚动?这是我的 xml 文件

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:background="@drawable/background"
     android:orientation="vertical" >

   <ListView
      android:id="@+id/listview"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:divider="@null"
      android:dividerHeight="0dip" />

   <TextView
      android:id="@+id/empty"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:gravity="center"
      android:text="@string/no_result_text"
      android:visibility="gone" />

</LinearLayout>
4

4 回答 4

0

你可以这样做

listView.setScrollContainer(false);

更多请查看

如何获得不可滚动的 ListView?

于 2013-09-04T05:36:48.377 回答
0

如果您不想永远隐藏滚动条。然后它会帮助你。由于 listView 上的 android:layout_height="match_parent" 和 TextView 滚动条出现。

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:background="@drawable/background"
     android:orientation="vertical" >

     <ListView
        android:id="@+id/listview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" // change 1
        android:divider="@null"
        android:dividerHeight="0dip" />

     <TextView
        android:id="@+id/empty"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" //change 2
        android:gravity="center"
        android:text="@string/no_result_text"
        android:visibility="gone" />

 </LinearLayout>
于 2013-09-04T05:37:48.013 回答
0

与Runnable 相比getLastVisiblePosition()getCount()您将了解您的列表视图是否适合屏幕。还要检查最后一个可见行是否完全适合屏幕。

ListView listView;
Runnable fitsOnScreen = new Runnable() {
    @Override
    public void run() {
        int last = listView.getLastVisiblePosition();
        if(last == listView.getCount() - 1 && listView.getChildAt(last).getBottom() <= listView.getHeight()) {
           listView.setScrollContainer(false);
        }
        else {
            listView.setScrollContainer(true);
        }
    }
};

最后在ListView的Handler中:onCreate()

listView.post(fitsOnScreen);
于 2013-09-04T05:32:55.013 回答
0

机器人:滚动条=“无”

尝试将上面的行放在 xml 中的列表视图中。

于 2013-09-04T06:07:11.580 回答