如何包含一个大型GridView并仍能滚动?

时间:2016-01-11 16:31:28

标签: android android-gridview android-scrollview

如何实现大型GridView并能够垂直和水平滚动?

我可以垂直滚动但不能水平滚动。水平宽度固定为父宽度,并且不能扩展到大于父宽度。

以下屏幕截图是我想要实现的示例。

Cinema Seat Reservation

2 个答案:

答案 0 :(得分:0)

我可以使用RecyclerView垂直滚动并使用ViewPager同时水平滚动。 尝试实现viewPager以水平滚动。

答案 1 :(得分:0)

最简单的解决方案是

  1. 使用水平滚动视图包含GridView
  2. 然后根据您为GridView
  3. 设置的列数动态调整GridView宽度的大小
  4. 最后,将列数乘以每列的宽度

    GridView gridView = (GridView) findViewById(R.id.grid_view);
    int numberOfColumns = 3;
    int sizeOfWidthPerColumn = 20;
    gridView.setNumColumns(numberOfColumns);
    ViewGroup.LayoutParams layoutParams = gridView.getLayoutParams();
    layoutParams.width = convertDpToPixels(numberOfColumns * sizeOfWidthPerColumn, this);
    gridView.setLayoutParams(layoutParams);
    
  5. 现在我可以水平和垂直滚动GridView。