在GridView上滚动到没有平滑动画的位置

时间:2014-08-14 11:34:16

标签: android gridview

我正在尝试将GridView立即移动到某个位置(在我的情况下是网格的开头)。我尝试了以下方法:

this.gridView.scrollTo(0, 0);
this.gridView.setScrollX(0);
this.gridView.setScrollY(0);
this.gridView.scrollTo(0, this.gridView.getTop());
this.gridView.computeScroll();
// Doing the previous in a post operation

这些都不起作用。我唯一的解决方法是:

this.gridView.smoothScrollToPositionFromTop(0, 0, 0);

这实际上滚动了,但即使我给出的持续时间为0,它仍然会进行短滚动动画。

1 个答案:

答案 0 :(得分:0)

我想你的gridView有一个网格ID。所以,如果它没有添加这个

android:id="@+id/grid"

,所以在onCreate方法中调用这些函数:

GridView v = (GridView) findViewById(R.id.grid); 

v.requestFocus();

如果上述技巧不起作用,请尝试将GridView放入RelativeLayout并执行以上操作

RelativeLayout