首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Android使用CardView作为RecyclerViewItem并实现拖拽和左滑删除

今天我们就来了解一下CardView属性,然后使用CardView和RecyclerView结合实现一个可以拖拽Item布局。...,下面我们把它应用到RecyclerView中,看起来会炫酷。...ItemTouchHelper 想实现拖拽和滑动删除效果,很可惜RecyclerView并没有提供现成API供我们使用,但是SDK为我们提供了ItemTouchHelper这样一个工具类帮助我们来轻松实现这些功能...大致意思就是,这是个工具类,可以实拖拽移动和策划删除使用这个工具需要RecyclerView和Callback。同时需要重写onMove()和onSwiped()方法。...好了,我们需求完成了,效果是不是很炫酷,当然大家可以根据自己需求做出炫酷效果,到时候别忘了与大家一起分享。希望对大家学习有所帮助。

2K10

界面无小事(八):RecyclerView增删item

前言 之前写过一篇代码动态增删布局, 对比下这次RecyclerView增删item, 说句实话, 代码动态增删布局基本可以退群了. ---- 增删item 当然首先你可以按照第一篇-界面无小事...(一): RecyclerView+CardView了解一下建立基础RecyclerView....这次关键是在适配器代码中加入增删item操作. 要注意一点, 刷新和原来在ListView操作是不一样....好了, 效果图: ? 效果图 不单单是我演示这种布局, 还有线型, 横向, 瀑布流都可以有这种类似效果. 可参考界面无小事(二): 让RecyclerView展示更多不同视图....:2.3.0' } 在Projectbuild.gradle中写入 repositories { google() jcenter() } 具体使用部分只要用动画类名替换之前默认动画类名即可

73830

RecyclerView使用_recyclerview是什么

布局管理器 线性布局管理器 网格布局管理器 ItemDecoration Item 动画 Item 点击 RecyclerView使用-高级篇(拉刷新下拉加载更多) 第一步:添加依赖 第二步:布局文件...RecyclerView使用-基础篇 第一步:添加RecyclerView **方法1:**点开任意一个布局文件,找到左边RecyclerView控件,点击旁边按钮即可添加RecyclerView。...Item点击 效果如下: RecyclerView使用-高级篇(拉刷新下拉加载更多) 通常RecyclerView使用时候需要配合上拉刷新下拉加载更多功能 我们通过开源控件SmartRefreshLayout...方法中添加下拉刷新和拉加载更多功能 下拉刷新: RefreshLayout refreshLayout = findViewById(R.id.refreshLayout); refreshLayout.setOnRefreshListener...如发现本站有涉嫌侵权/违法违规内容, 请发送邮件至 举报,一经查实,本站将立刻删除

1.3K31

轻松掌握RecyclerView缓存机制

View Cache View Cache 指的是 RecyclerView 在屏幕已经展示 View 缓存。这些 View 被缓存起来,以便在需要时候可以快速地进行重用。...当 ViewPool 里缓存满了之后,多余会被回收删除掉。...使用多个 RecyclerView.Adapter 来处理不同类型数据 对于不同类型数据,使用不同布局文件和 ViewHolder,从而更好地利用缓存池机制,并且避免不同类型数据混搭异常。...DiffUtil 工具 在 RecyclerView.Adapter 中使用 DiffUtil 工具来比较新旧数据集差异,从而避免不必要数据更新和 ViewHolder 重建,提高 RecyclerView...通过设置 RecyclerView ItemAnimator,可以在 RecyclerView 添加删除动作时显示动效,让用户更好体验到Item之间变化过程。

38721

界面无小事(三):用RecyclerView + Toolbar做个文件选择器

前言 github传送门 在之前两期也是说了很多RecyclerView使用, 这期打算来个实操性质....文件 ---- RecyclerView适配器 具体使用在之前文章里面也细说过了. 这里来看两个关键函数. 我们填充内容主要是当前目录下全部files, 存放在ArrayList当中....String.format(getResources().getString( R.string.selected_str), mSelectCount)); 如果你要在Toolbar添加按钮...= null) { actionBar.setDisplayHomeAsUpEnabled(true); } ---- 填充RecyclerView条目 既然要使用RecyclerView,...一个比较重要就是, 在当前mSelectPath中需要进行确认, 如果已经存在就删除这个选择, 如果不存在, 就选择这个文件, 这个逻辑也是很好理解. ---- 悬浮按钮 这个也是非常常用一个视图类

49620

不要在按钮、链接或任何其他文本容器使用固定 CSS 高度或宽度

免费体验 Gpt4 plus 与 AI作图神器,我们出钱 体验地址:体验 为什么 尽管一些网页设计工具为按钮等元素指定了 CSS 高度值,但设置高度或最大高度实际可能会违反 WCAG 2.2 Success...如果对影响元素计算高度和宽度 CSS 属性使用固定值,当文字大小增大时,元素内部文字会被截断。 还不信服? 你可能会想:"但当我把浏览器放大到 200% 时,按钮文本看起来很好!"...处理起来比你想象容易! 代码演示 注意:为了这些演示目的,请假装我们使用 rem 单位设置 font-size。我在这里使用 px 单位,以免继承我网站基本字体样式。...,并尝试在 line-height 和 padding 中不使用单位,以影响按钮 height 和 width 。...CSS 属性,如 max-width ,但我个人倾向于使用尽可能少 CSS 属性(以降低长期维护成本)。

9610

android ItemTouchHelper实现可拖拽和侧滑列表示例代码

笔者使用 RecyclerView ItemTouchHelper 来实现这个效果,过程非常简单。为了学习,这里顺便实现了一下侧滑删除。...实现功能: 按住 item 左侧按钮可以上下拖动 item 向右侧滑删除 item item 拖动或侧滑时有阴影效果 实现基本功能 循序渐进学习,这里我们先实现基本功能: 长按 item 实现上下拖拽...这是一个给 RecyclerView 添加侧滑删除和拖拽工具类。有了它,我们就可以很方便实现上面的效果。...item Z轴高度增加,有明显阴影 要实现这个效果,笔者使用 ItemTouchHelper.Callback 提供两个回调方法: onSelectedChanged(RecyclerView.ViewHolder...,是 View 在Z轴初始值 translationZ 是动态值,是Z偏移变化 所以我们这里应该使用 setTranslationZ() 来改变 View Z轴高度而不是使用 setElevation

1.3K11

写给初学者Jetpack Compose教程,Lazy Layout

你会发现Lazy Layout在用法方面相比于RecyclerView简直就是降维打击。 比如我们想要实现下图中滚动列表效果: 如果是使用RecyclerView要怎么实现呢?...,以至于连RecyclerView作者Yigit Boyar都在Twitter发出感慨,为自己设计用法感到羞愧。...现在可以运行一下程序看看效果了: 正如我们所期待那样,当A元素在屏幕可见时候,Fab按钮也是可见。当A元素滑出了屏幕,Fab按钮也会随之消失。...相比于RecyclerView,基于ComposeLazy Layout在这一点确实非常劣势,因为RecyclerView就完全不会有重组困扰,只需要offset一下子项位置就可以了。...比如说我们上述举例子当中,由于每个数值都不相同,那么就可以直接拿这些数值来当id。 如果你使用数据源是复杂对象类型,那么就需要想办法从这些对象中找到能够标识它唯一性值来当id。

34410

Android之MaterialDesign应用技术

“其他平台”提供一致、更广泛“外观和感觉”。...吸顶差不多一个概念,都是增强了用户视觉,使用户有更好体验。...,往下滑,则返回顶部图标显示,往上滑图标不显示, 原因:在很多段子软件中,会有大量文字和图片,当用户往下翻时候,也就是说内容会不断在上方消失,下面的内容不算刷新出来,这时右下角出现一个辅助用户回到顶部按钮...2.1:创建布局文件 外层是协调者布局,中间就是一个类似于listviewRecyclerView,和一个右下角返回顶部按钮。...比如说,toolbar在何时显示,可以选择只要是滑就显示,也可以选择是滑到最上面的内容才显示,这个例子就是滑动到最上面的内容toolbar再显示。

1.3K90

Android RecyclerView使用简述

使用 ① Activity使用DataBinding ② item布局 ③ 适配器 ④ 添加item点击和长按事件 五、RecyclerView下拉刷新和拉加载 ① 添加依赖库 ② 下拉刷新数据 ③...拉加载更多 六、RecyclerView多布局使用 ① 创建布局Item ② 创建数据Bean ③ 适配器 七、RecyclerView多级列表使用 ① 创建布局Item ② 创建数据Bean ③ 适配器...五、RecyclerView下拉刷新和拉加载   在日常使用中,RecyclerView数据并不是一次性都加载出来,会有分页,重新加载等操作,而手机上操作就是下拉刷新和拉加载。...,对RecyclerView是否隐藏做判断,首先是修改图标,然后是修改RecyclerView是显示还是隐藏,也是比较简单代码,但是有效,这里点击事件处理在适配器中处理会简单,所以就直接处理了。...九、RecyclerView左右滑动和上下拖动   在操作RecyclerView时候,我们还会有例如Item侧滑删除这样操作,或者上下拖动更改Item位置。

2.3K21

Android基于DataBinding封装RecyclerView实现快速列表开发

前言 在移动应用开发中,列表组件是一个非常常见 UI 组件,绝大多数应用开发中都会使用到列表组件进行界面的开发,在 Android 开发中列表组件一般使用官方提供 RecyclerView ,而...,就会自动刷新界面更新界面上显示数据,下面为了演示在页面布局里添加两个按钮分别进行添加数据和删除数据操作,如下: <?...itemEventHandler对象,类型需跟 itemEventHandler 传递类型一致,这里演示在 item 布局里添加一个删除按钮,再将删除按钮点击事件代理到 ViewModel eventDeleteItem...最后在页面布局中 RecyclerView 配置 itemViewType 属性,如下: <androidx.recyclerview.widget.RecyclerView...最后 基于 DataBInding 对 RecyclerView 进行封装后,在进行列表功能开发时无需再进行重复 Adapter、ViewHolder 样板代码编写,让开发者能专注于列表功能业务本身

2.6K30

RecyclerView使用CheckBox出现勾选混乱解决方法

熟悉RecyclerView的人应该都知道,RecyclerView使用了复用机制,当在RecyclerView中得每一项都添加一个CheckBox时,勾选当前页面的几个CheckBox会发现下面还有其他...,就是当要删除某个子项时候会出现删除紊乱情况,为了说明这个问题,我们 先来尝试实践一下,修改item_recyclerview: <?...{ private CheckBox checkBox; private Button button;//定义删除按钮 public MyViewHolder(View...,第二次删除item却是我们点击Button所在下一个item,后面的删除也会各种混乱,这是因为函数里面的传入参数position,它是在进行onBind操作时确定,在删除单项后,已经出现在画面里项不会再有调用...onBind机会,这样它保留position一直是未进行删除操作前postion值,对于尚未进入画面的单项来说,它会使用position值(好吧这段是抄,其实我也不太懂啥意思),解决方法如下:

1.7K20

RecyclerView使用详解(代替ListView)

;今天我们就实现最简单五点功能: 功能点:为RecyclerView添加点击事件,添加头布局和脚布局,添加下拉刷新和拉加载更多; 好了首先说下如何用RecyclerView代替横向listview...: RecyclerView使用个人感觉其实比较简单,但是网上很多demo介绍感觉有点复杂,在本文中RecyclerView基本使用只需两步: 第一:设置布局管理器 第二:设置adapter...,实际使用自定义监听给adapter设置了点击事件; 自定义监听就不再过多介绍了,以前写博客中有专门介绍自定义监听,不了解朋友可以了解一下SwipeRefreshLayout实现ListView...,写真的很复杂,所以都没有使用,最后在git找到一个自定义RecyclerView直接继承系统RecyclerView,除了添加了两个方法,其他用法不变,感觉挺实用,在此就不复制这个类了,源码中都有...SwipeRefreshLayout,这个在以前博客中也有介绍,在此就不再重复了,不了解朋友可以了解一下 Android自定义ScrollView使用自定义监听 好了,剩下最后一个功能点,拉加载更多

1.3K20

RecyclerView嵌套滑动置顶 项目篇

本来想像以前滑动置顶使用CoordinatorLayout+TabLayout+RecyclerView形式处理,但是感觉欠妥,用uiautomatorviewer分析了天猫/京东/网易考拉所有App...首页都是使用RecyclerView-ViewPager-RecyclerView形式,然后继续寻找时发现了一个最接近项目 xmuSistone/PersistentRecyclerView。...这应该是我找过最完善代码,然后应用到实际项目中发现还是有问题: 1.在华为设备滑动子RecyclerView时会有跳动 2.父RecyclerView下拉刷新使用是SmartRefreshLayout...} } 2.解决下拉刷新/拉加载问题(问题2/3) 由于之前花了一番功夫写了 ByRecyclerView,支持下拉刷新和拉加载,其本质就是Adapter加一个特殊viewType来处理...,所带来兼容性也好很多,于是将BaseRecyclerView继承ByRecyclerView后就达到了要求,给ParentRecyclerView和ChildRecyclerView分别加下拉刷新和拉加载监听就好了

1.3K22
领券