效果图:思路1先自定义一个滑动布局写一个类MySlideLayout继承RelativeLayout重写onFinishInflate(布局加载完成后调用),在其中拿到子控件的对象重写onMeasure,在其中拿到子控件的宽和本控件的高重写onLayout,设置删除按钮的位置重写onTouchEvent在其中实现控件的滑动2把滑动布局作为ListView的条目,展示出现bug1listView上下
转载 2024-04-11 20:48:29
61阅读
距上次写博客有半年多了,回忆起来都觉得不可思议,中间也想憋俩大招,总是被耽误,这俩月忙完之后,终于空下来了,恰好新项目我和UI俩人商量一下,用MD来实现app。中间有个需求是RecyclerView中显示删除按钮,点击删除。于是就有了这篇博客。一、目标与分析先上图:1. 目标如图所示,我们的目标是实现在RecyclerView中实现:向左侧超出菜单按钮一半宽度能够使item展示出菜单按钮;向
# Android 删除控件详解 在 Android 开发中,删除功能是一种常见的交互需求,特别是在列表展示的应用中。通过滑动手势,用户可以迅速删除某个列表项,提升用户体验。本文将深入探讨 Android 中实现删除控件的相关知识,并附上完整的代码示例。 ## 什么是删除删除(Swipe to Delete)是一种用户界面交互模式,允许用户通过水平滑动来删除某个项。在
原创 2024-09-15 06:37:33
301阅读
本篇文章主要谈谈QQ左删除效果的制作,本ScrollDeleteView跟QQ的实现思路有些差别,QQ的实现是将整块列表作为一个容器操作的,使得效果更加绚丽,更好的控制左删除的效果和事件分发冲突,本View不存在滑动冲突。 先讲解一下我的思路,这个列表中承载的是ScrollDeleteView,分为两个部分 1.cotentView; 2.隐藏的View; 那么我们怎么让其滑动起来?,
项目中有个需求,就是防QQ的消息列表删除。在网上找了一些资料后,弄明白了原理。无非就是利用ViewDragHelper去拖动控件。我的想法是,在一个FrameLayout中有两个控件,一个是主控件,另一个就是删除控件。主控件宽高充满布局,删除控件在FrameLayout的右侧,并且被主控件遮挡住。当滑动主控件的时候,从而让删除控件显示出来(这个方法,并不会让删除控件移动)。当然,也可以将主控件
转载 2024-03-04 08:57:59
94阅读
今天介绍下项目中用到的删除recycleview的删除优化与项目的具体应用先上图(简单的):具体步骤:1.recycleview垂直方向滑动,保证recycleview的item必须为viewgroup,并且item布局中的菜单view必须在最右边(项目中默认向左滑动有效),出可见屏幕外,指定具体的宽度。LayoutManager采用LinearLayoutManager(也可用GridL
转载 2023-10-09 20:26:08
800阅读
删除背后的逻辑1布局的绘制onMeasureonLayout2 事件的分发都不处理爸爸拦截不吃吃事件分发的结论完整代码的实现效果图代码 背后的逻辑想要实现左删除,在现有控件不满足的情况下,肯定是要自定义View。 然后考虑需要实现的效果,里面肯定具有两个子控件,一个是显示内容,一个是显示按钮,所以毫无疑问要自定义控件需要继承ViewGroup(布局控件)。1布局的绘制布局绘制中,最重要的就是
转载 2023-08-20 08:29:25
281阅读
对于删除已经是见惯不惯的了,我也一直有写类似那样的删除控件的想法,虽然研究一段时间的自定义View,然对自定义ViewGroup实战还是较少,并且删除还要考虑大量的事件分发机制,比如如何处理子控件与父控件之间的滑动冲突以及一系列的down->move..move.. ->up操作等等。童哥刚好写了这么一个删除,使用起来不但简单方便,更重要的是更加优雅的实现了解耦,也
# Android控件的深度剖析 在Android开发中,界面交互是用户体验的关键,而控件(Sliding Pane)则是一种常用的用户界面元素。当用户需要同时显示两个面板的内容时,控件提供了优雅的解决方案。本文将深入探讨Android控件的使用方法,通过代码示例帮助开发者快速上手,并提供一些设计思路和最佳实践。 ## 1. 控件的基本概念 控件通常用于在屏幕的一
原创 2024-09-12 07:15:52
77阅读
前段时间做项目,有一个需求是需要做一个删除的功能。 之前由于项目赶的比较紧,所以一起工作的小伙伴用了第三方的,自己想想,这个应该不难实现。废话不多说,先上效果图 今天权当做下笔记,这篇文章主要参考了以下两人的文章 http://www.jianshu.com/p/9bfed6e127cc网上实现该功能的一大堆,大多使用的是ItemTouchHelper这个辅助类,大家有兴趣可以搜一下相关资料
关于ListView删除这是个老话题,大多数APP都具有这样类似的功能,对于一位Android初涉者来说,实现这样的功能确实有一点难度,网上的实现方法也层出不穷,我仔细在网上翻了一下,居然看到了还有很多实现的第三方依赖包,觉得有些无语,尝试使用一番,大多数实现还是很好的,比我今天要说的好的多,当然也有劣质的包,这里也就不多说了。既然是老话题,那么没有一点实现上的优势,我也说不下去,这个优势
转载 2023-12-28 21:36:56
222阅读
最近工作的项目中需要用到listview的删除。参考了网上的一些项目做出了更改,这里做出一篇笔记,希望对看到的人有一些帮助。实现步骤一:定义自定义控件SlideListView/** * Created by Anthony on 16/1/4. */ public class SlideListView extends ListView { /** * 禁止模式
转载 2023-10-26 22:34:35
152阅读
前些天又有一个同学私信我,问我删除功能改如何实现?时不时的就会收到相似的问题,有空的时候我会说一下大概的实现思路或者扔一个Github 的链接,没空的时候就会叫他们自己Google一下,网上有一些现成的开源库,拿来自己改一下或者能实现设计给的UI效果的,直接用上就好。菜单确实是一个比较常见的功能,其中场景较多的就是删除,它是iOS列表删除通用交互方式,比如微信、QQ、苹果自带的短信、通
原创 2020-12-24 21:37:23
3037阅读
如果要评出设计创意最“脑洞大开”的手机厂商,OPPO绝对能够上榜。今天早上,网上传出了一张OPPO的最新设计创意,通过弹出或者的方式,手机瞬间多了第二块屏幕,这样的创意效果,的确惊艳了不少的网友。不得不服,在脑洞大开面前,OPPO绝对是手机圈里的扛把子。 其实,对于熟悉OPPO的人来说,这种设计已经是见怪不怪了。从诞生以来,OPPP就不断突破现有的设计水平,给我们推出了很多创意十足
# Android删除Android应用中,删除是一种常见的交互方式,它允许用户通过向左或向右滑动列表项来删除该项。本文将介绍如何实现Android删除功能,并提供相应的代码示例。 ## 使用RecyclerView实现删除Android开发中,通常使用RecyclerView来展示列表数据。为了实现删除功能,我们需要做以下几个步骤: 1. 创建一个Recycl
原创 2023-08-16 05:14:16
534阅读
# 删除 AndroidAndroid 开发中,删除是一种常见的交互操作,用于删除列表中的项。这种交互能够提供便捷的操作体验,让用户能够快速删除不需要的内容。本文将介绍如何在 Android 应用中实现删除的功能,并提供相应的代码示例。 ## 实现删除的基本原理 实现删除的基本原理是利用 Android 的 `RecyclerView` 组件和适配器模式相结合。`R
原创 2024-01-21 10:13:51
32阅读
前两天已经完成了高仿6.0和优化,今天来看下侧删除的实现吧,如果有兴趣,可以去看下之前的两篇,仿6.0之ViewDragHelper的使用(一)和高仿6.0菜单之滑动优化(二),好了不多说,开始今天的内容了。 如果看过之前的两篇的话,想必今天的很好实现的,我们来分析一下哈,删除,布局也就是前面一个item,然后有两个隐藏的按钮(TextView也可以),然后我们可以
前言  ListView删除操作已经成为了一种常见的交互,一般是从列表控件自身出发,重写ListView实现,比如网上使用频率较高的SwipeMenuListView。   其实还有一种更直观的做法,那就是把焦点放在滑动List Item本身这个操作上来,自定义可以支持操作的ItemView,即对ListView适配器中的convertView的RootView布局控件进行重写,这样更容易
目录:1. SwipeLayout组件功能介绍2. SwipeLayout使用方法3. SwipeLayout开发实现4.《HarmonyOS三方件开发指南》系列文章合集1. SwipeLayout组件功能介绍1.1.功能介绍:SwipeLayout组件是一个删除组件。1.2. 模拟器上运行效果:  2. SwipeLayout使用方法2.1. 新建工程,增加组件Har包依
转载 2023-07-31 15:09:39
150阅读
安卓删除编辑新建一个类继承recyclerview(可直接使用)public class SlideRecyclerView extends RecyclerView { private static final String TAG = "SlideRecyclerView"; private static final int INVALID_POSITION = -1; /
转载 2023-10-15 01:03:28
78阅读
  • 1
  • 2
  • 3
  • 4
  • 5