在Android上,GridView滚动视图超出视野范围时,滚动条会消失。

3

我在我的GridView中遇到了一个非常奇怪的bug

<GridView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/gridview"
android:layout_width="fill_parent" 
android:layout_height="fill_parent"
android:numColumns="auto_fit"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:columnWidth="90dp"
android:stretchMode="columnWidth"
android:gravity="center"

/>

我在一个网格视图中显示图像,并且可以向上和向下滚动。

但是,如果我快速向上滚动,最上面的图像行超过屏幕底部,我就无法继续滚动,只能留下空白屏幕。

有什么想法吗?


我上周遇到了完全相同的问题。在我的情况下,我认为这与试图将太多/大的元素塞入单个网格项有关。例如:我正在显示一些文本和图像(异步下载)旁边,但后者具有巨大的尺寸,破坏了布局并导致奇怪的“超滚动”,只留下一个空屏幕。调整图标大小解决了我的问题。 - MH.
你找到解决方法了吗? - deeJ
我也遇到了类似的问题。对于我的情况,图像的大小对于网格视图来加载非常大。因此,请尝试将图像调整为较小的尺寸。 - Alvi
1个回答

0

你需要在GetView代码中设置LayoutParams,例如:

mFrameLayout.setLayoutParams(new GridView.LayoutParams(175, 175));

我正在GridView中填充FrameLayout,GridView的列宽为175。我认为当您滚动时,问题就会出现,因为填充视图的高度和宽度超过了列宽的宽度。

如果我错了,请纠正我。但是这段代码解决了我的问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接