suchen

Heim  >  Fragen und Antworten  >  Hauptteil

android - 如何用GridView实现展开和收起的功能


这是默认收起来的,点击展开实现显示全部内容:


这该如何实现?????

高洛峰高洛峰2772 Tage vor762

Antworte allen(4)Ich werde antworten

  • 迷茫

    迷茫2017-04-17 17:43:49

    这个解决方案有很多,我会选择点击展开将剩余的item全部加到adapter,在更新下就行了。收起的话就把那些需要收起的item从adapter中移除就行了。这里需要对最后那个item的点击事件做额外的处理。

    Antwort
    0
  • 天蓬老师

    天蓬老师2017-04-17 17:43:49

    获取这gridView的layoutParams,然后设置其高度,类似这样子
    ViewGroup.LayoutParams layoutParams = gridView.getLayoutParams();
    layoutParams.height = 300;

    一般这样的效果都会做一个过渡动画,原理是一样的,只是将一次做的事情分多次做(将高度逐渐变大)

    Antwort
    0
  • 怪我咯

    怪我咯2017-04-17 17:43:49

    其实这种效果并不需要用GridView做,按你的描述来看并没有滑动的需求,所以可以用GridLayout做,点击之后remove最后一个 然后添加完后再 add收起就好了- -不复杂 逻辑也清楚。

    Antwort
    0
  • 怪我咯

    怪我咯2017-04-17 17:43:49

    我们公司实现这个需求用的是设置一个标记属性,用于记录展开收起状态,重写adapter的getItemCount()的返回值,根据这个标记属性,当收起时返回8,展开是返回总数目

    Antwort
    0
  • StornierenAntwort