RecycleView隐藏部分Item

android 专栏收录该内容
37 篇文章 0 订阅

最近遇到一个业务需求,就是读取手机里面的所有的视频文件,并且根据文件所在的文件夹进行分类.效果图如下:

这里写图片描述

打点击左侧的按钮实现展开和收起.具体的实现代码如下:

public static class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{
    ...

    public void setVisibility(boolean isVisible){
        RecyclerView.LayoutParams param = (RecyclerView.LayoutParams)itemView.getLayoutParams();
        if (isVisible){
            param.height = LinearLayout.LayoutParams.WRAP_CONTENT;
            param.width = LinearLayout.LayoutParams.MATCH_PARENT;
            itemView.setVisibility(View.VISIBLE);
        }else{
            itemView.setVisibility(View.GONE);
            param.height = 0;
            param.width = 0;
        }
        itemView.setLayoutParams(param);
    }

    public ViewHolder(View itemView) {
        super(itemView);
        ...
    }
}

刚开始的实现思路是控制Item的Viesible或者gone但是显示的结果却是在每个分类的header下面依旧会显示一段空白的区域..所以就通过控制Item的params属性,来实现该效果..

  • 4
    点赞
  • 6
    评论
  • 3
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 精致技术 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值