怎么搭建recyclerView滑动删除
发表于:2024-09-28 作者:千家信息网编辑
千家信息网最后更新 2024年09月28日,这篇文章主要讲解了"怎么搭建recyclerView滑动删除",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么搭建recyclerView滑动删除"吧
千家信息网最后更新 2024年09月28日怎么搭建recyclerView滑动删除
这篇文章主要讲解了"怎么搭建recyclerView滑动删除",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么搭建recyclerView滑动删除"吧!
package com.example.demo; import androidx.annotation.NonNull;import androidx.appcompat.app.AppCompatActivity;import androidx.recyclerview.widget.ItemTouchHelper;import androidx.recyclerview.widget.LinearLayoutManager;import androidx.recyclerview.widget.RecyclerView; import android.graphics.Canvas;import android.os.Bundle;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.LinearLayout;import android.widget.TextView; import java.util.ArrayList;import java.util.List; /** * @author Huang xudong * @date 2020/7/26 */public class MainActivity extends AppCompatActivity { private RecyclerView recyclerView; private List list=new ArrayList(); class MyAdpter extends RecyclerView.Adapter{ class ViewHolder extends RecyclerView.ViewHolder{ private TextView textView; private LinearLayout linearLayout; public ViewHolder(@NonNull View itemView) { super(itemView); linearLayout=itemView.findViewById(R.id.ll_main); textView=itemView.findViewById(R.id.tv_main); } } @NonNull @Override public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View inflate = LayoutInflater.from(getApplicationContext()).inflate(R.layout.item_demo,parent, false); return new ViewHolder(inflate); } @Override public void onBindViewHolder(@NonNull ViewHolder holder, int position) { } @Override public int getItemCount() { return list.size(); } } class CallBack extends ItemTouchHelper.Callback{ @Override public int getMovementFlags(@NonNull RecyclerView recyclerView, @NonNull RecyclerView.ViewHolder viewHolder) { return makeMovementFlags(0,ItemTouchHelper.LEFT); } @Override public boolean onMove(@NonNull RecyclerView recyclerView, @NonNull RecyclerView.ViewHolder viewHolder, @NonNull RecyclerView.ViewHolder target) { return false; } @Override public void onSwiped(@NonNull RecyclerView.ViewHolder viewHolder, int direction) { /** * call max distance start onSwiped call */ } @Override public void onChildDraw(@NonNull Canvas c, @NonNull RecyclerView recyclerView, @NonNull RecyclerView.ViewHolder viewHolder, float dX, float dY, int actionState, boolean isCurrentlyActive) { if (actionState==ItemTouchHelper.ACTION_STATE_SWIPE){ /** * get {@link TextView#getWidth()} */ ViewGroup viewGroup= (ViewGroup) viewHolder.itemView; TextView textView = (TextView) viewGroup.getChildAt(1); ViewGroup.LayoutParams layoutParams = textView.getLayoutParams(); if (Math.abs(dX)<=layoutParams.width){ /** * move {@link RecyclerView.ViewHolder} distance */ viewHolder.itemView.scrollTo((int) -dX,0); /** * callAction or register click bind view */ } } } } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); recyclerView=findViewById(R.id.rv_main); list.add(1); list.add("2"); MyAdpter myAdpter=new MyAdpter(); LinearLayoutManager linearLayoutManager=new LinearLayoutManager(getApplicationContext()); linearLayoutManager.setOrientation(RecyclerView.VERTICAL); recyclerView.setLayoutManager(linearLayoutManager); recyclerView.setAdapter(myAdpter); ItemTouchHelper itemTouchHelper=new ItemTouchHelper(new CallBack()); itemTouchHelper.attachToRecyclerView(recyclerView); }}
感谢各位的阅读,以上就是"怎么搭建recyclerView滑动删除"的内容了,经过本文的学习后,相信大家对怎么搭建recyclerView滑动删除这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
学习
内容
就是
思路
情况
文章
更多
知识
知识点
篇文章
跟着
问题
实践
推送
研究
验证
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
语音朗读软件开发
有哪些类型的软件开发项目
加强交易系统网络安全的通知
重庆科技学院计算机网络技术
SCDM 软件开发
北京无限维度网络技术有限公司
参与套路贷软件开发销售
安徽想度假网络技术
联想浏览器不能连接服务器怎么办
腾讯云服务器老打电话
潜渊症专用服务器选不了战役模式
c数据库连接超时
移动软件开发专业好吗
出国留学计算机科学还是网络安全
积分兑换服务器
天津华为服务器虚拟化安装云空间
软件开发重难点
广东租房软件开发
计算机网络技术一定要数学好吗
局域网的网络安全体系研究
sql数据库同时修改多个表名
计算机网络技术文案高质量
查新数据库
删除数据库某行内容
服务器与客户端的通信安全模式
广西卫星同步数显钟服务器
搭建域环境服务器
软件开发及更新的财务处理
怎么成为好的网络技术人员
泛微服务器维修配件报价