首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >android: Gridview通过点击按钮显示更多项目

android: Gridview通过点击按钮显示更多项目
EN

Stack Overflow用户
提问于 2016-10-20 19:38:49
回答 2查看 570关注 0票数 0

我想创建一个像这样的网格视图。(对不起,有点乱,画得不好:D)

因此,基本上网格视图将显示第一到第四项。如果我单击下一步,将显示第5-8项。诸若此类。

我现在的想法是设置一个有4个项目的网格视图,并在每次点击按钮时改变适配器。但我认为这并不是很方便。另一个想法是使用“分页”..

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2016-10-20 20:12:26

您可以使用包含线性布局的水平滚动视图,并在线性布局中动态添加您的网格项目(视图)。如果你在这个想法上还需要帮助,请告诉我!

票数 0
EN

Stack Overflow用户

发布于 2016-10-20 20:38:00

要实现这一点,请使用具有水平LinearLayoutManager的RecyclerView。然而,用户将能够滚动项目以及。要禁用在RecyclerView上滚动,您可以将其子类化并覆盖onTouchEvent()方法,该方法将禁用任何移动事件的反应:

代码语言:javascript
运行
复制
@Override
public boolean onTouchEvent(MotionEvent event) {

    switch(event.getAction()){

        case MotionEvent.ACTION_DOWN:
            return super.onTouchEvent(event);

        case MotionEvent.ACTION_MOVE:
            break; //Don't call super.

        case MotionEvent.ACTION_UP:
            return super.onTouchEvent(event);
    }
    return false;
}

当用户单击按钮以移动到下一页时,您可以在LinearLayoutManager对象上使用以下方法之一来查找适配器中的当前位置:

代码语言:javascript
运行
复制
int findFirstVisibleItemPosition();
int findFirstCompletelyVisibleItemPosition();
int findLastVisibleItemPosition();
int findLastCompletelyVisibleItemPosition();

确定新位置后,可以使用scrollToPosition()smoothScrollToPosition()方法滚动到新数据。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40153390

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档