最近搞了下Recyclerview,做了增加、删除item的功能。item上方有卡签

插个图片看下效果,点击底下的添加上去,同时,底下的item消失,这个用notifyItemInserted和notifyItemMoved就可以解决,但同时现在考勤底下只剩下一个补签功能,

这个时候我点击补签,希望考勤标签也要消失掉,要不难看的要死要死的,所以我视图使用itemView.setVisibilty(View.GONE)解决该问题,但是考勤标签那部分是隐藏了,但是是INVISIBLE的效果,原位置还在,这我就忍不了了,明明是GONE,为毛是INVISIBLE的效果,后来在网上查了查资料,偶然发现一片博客,

附上博客地址:http://blog.csdn.net/u011060103/article/details/52780844,

解决了此问题,故在此记录下来,避免以后发生这样的问题

注意:itemIVew不能有margin,如果有的话替换成padding,否则不能隐藏空白区域

下边viewholder中setVisibility方法是重点哦。

再贴下代码:

  /**
* 列表类型名称分割线viewholder
*/
class MyAppTypeDivider extends RecyclerView.ViewHolder {
TextView itemDividerTypeTv;
RelativeLayout itemRootLayout;
// 这个方法是重点!!!!!!!!!!!!!!!!!!!!!!!!!!
public void setVisibility(boolean isVisible) {
RecyclerView.LayoutParams param = (RecyclerView.LayoutParams) itemView.getLayoutParams();
if (isVisible) {
param.height = RelativeLayout.LayoutParams.WRAP_CONTENT;// 这里注意使用自己布局的根布局类型
param.width = RelativeLayout.LayoutParams.MATCH_PARENT;// 这里注意使用自己布局的根布局类型
itemView.setVisibility(View.VISIBLE);
} else {
itemView.setVisibility(View.GONE);
param.height = ;
param.width = ;
}
itemView.setLayoutParams(param);
} public MyAppTypeDivider(View itemView) {
super(itemView);// itemView不能有margin属性,如果有替换成padding
itemRootLayout = (RelativeLayout) itemView.findViewById(R.id.item_myapplication_all_divider_root_layout);
itemDividerTypeTv = (TextView) itemView.findViewById(R.id.item_myapplication_divider_type_tv);
}
}

Android Recyclerview隐藏item的所在区域显示大空白问题的解决方案的更多相关文章

  1. Android RecyclerView的item大小保持四个半

        现在有这么一个需求,实现下图的UI.  我想你应该能想到用RecyclerView实现, 当我唰唰唰几分钟做完之后,UI设计师跟我说,每个item,无论在什么手机上,都要显示四个半,具体看下图 ...

  2. Android RecyclerView 设置item间隔的方法

    RecyclerView大家常用,但是如何给加载出来的item增加间隔很多人都不知道,下面是方法,直接上代码了: LinearLayoutManager layoutManager = new Lin ...

  3. Android recyclerview删除item刷新列表

    删除item坑 mModels.remove(i); notifyItemRemoved(i); //必须调用这行代码 notifyItemRangeChanged(i, mModels.size() ...

  4. Android RecyclerView的基本使用

    Android RecyclerView 在去年的Google I/O大会上就推出来了,以前经常使用的ListView 继承的是AbsListView,而RecyclerView则直接继承 ViewG ...

  5. android高仿微信UI点击头像显示大图片效果

    用过微信的朋友朋友都见过微信中点击对方头像显示会加载大图,先贴两张图片说明下: 这种UI效果对用户的体验不错,今天突然有了灵感,试着去实现,结果就出来了.. 下面说说我的思路: 1.点击图片时跳转到另 ...

  6. 解决ScrollView嵌套RecyclerView出现item显示不全的问题

      问题:ScrollView嵌套RecyclerView时,RecyclerView的item显示不全 出现问题不要慌,耐心解决才是王道,哈哈.首先说下出现这个问题的情景吧,首先声明这个问题在23版 ...

  7. Android 高级UI设计笔记20:RecyclerView 的详解之RecyclerView添加Item点击事件

    1. 引言: RecyclerView侧重的是布局的灵活性,虽说可以替代ListView但是连基本的点击事件都没有,这篇文章就来详细讲解如何为RecyclerView的item添加点击事件,顺便复习一 ...

  8. <item name="android:windowNoTitle">true</item> 不起作用。标题栏未被隐藏

    改变style.xml 加入 <item name="android:windowNoTitle">true</item> 按理说可以把标题栏隐藏,但是当s ...

  9. Android中当item数量超过一定大小RecyclerView高度固定

    Android中当item数量超过一定大小时,将RecyclerView高度固定 方法1 直接通过LayoutParams来设定相应高度 ViewGroup.LayoutParams lp = rv. ...

随机推荐

  1. 线段树 SP2713 GSS4 - Can you answer these queries IV暨 【洛谷P4145】 上帝造题的七分钟2 / 花神游历各国

    SP2713 GSS4 - Can you answer these queries IV 「题意」: n 个数,每个数在\(10^{18}\) 范围内. 现在有「两种」操作 0 x y把区间\([x ...

  2. Buy or Build UVA - 1151 Kruskal+枚举

    题意: 大概意思是有 n 个点,现在有 q 个方案 ,第 i 个方案耗费为 ci ,使 Ni 个点联通 ,当然也可以直接使两点联通 ,现求最小生成树的代价. 两点直接联通的代价是欧几里得距离的平方: ...

  3. java.sql.Date/ java.util.Date/ java.util.Calendar 用法与区别

    在 JDK API  这样解释," 在 JDK 1.1 之前,类 Date 有两个其他的函数.它允许把日期解释为年.月.日.小时.分钟和秒值.它也允许格式化和解析日期字符串.不过,这些函数的 ...

  4. 【2014年百度之星资格赛1001】Energy Conversion

    Problem Description 魔法师百小度也有遇到难题的时候—— 现在,百小度正在一个古老的石门面前,石门上有一段古老的魔法文字,读懂这种魔法文字需要耗费大量的能量和大量的脑力. 过了许久, ...

  5. [Node.jS]shelljs

    shelljs : https://www.npmjs.org/package/shelljs 要给可以替代Unix下shell脚本的库. require('shelljs/global'); if ...

  6. ul li做横向导航栏例子

    /* ul li以横排显示 */ /* 所有class为menu的div中的ul样式 */ div.menu ul { list-style:none; /* 去掉ul前面的符号 */ margin: ...

  7. ZOJ3068(01分数规划)

    本是POJ2976,喜闻乐见的01规划入门题.POJ日常假死,到ZOJ测. 二分答案. 试了试数据好像没问题,\(a_i\)总是小于\(b_i\)且最终预答案l都小于1.然而为什么我把r设成1e10往 ...

  8. Codeforces Round #339 (Div. 2) A

    Description Programmer Rostislav got seriously interested in the Link/Cut Tree data structure, which ...

  9. esper(4-2)-Category Context

    语法: create context context_name group [by] group_expression as category_label [, group [by] group_ex ...

  10. gitlab 邮件配置

    vim /etc/gitlab/gitlab.rb gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "sm ...