Android侧滑按钮怎么实现
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,这篇文章主要介绍"Android侧滑按钮怎么实现"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"Android侧滑按钮怎么实现"文章能帮助大家解决问题。Andr
千家信息网最后更新 2025年02月01日Android侧滑按钮怎么实现
这篇文章主要介绍"Android侧滑按钮怎么实现"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"Android侧滑按钮怎么实现"文章能帮助大家解决问题。
Android侧滑按钮效果如下所示:
导入闭包
将以下语句倒入目录下build.gradle文件内
implementation 'com.github.WangcWj:WeSwipe:1.0.2' implementation 'cn.wang.we:network:1.0.0'
将以下语句倒入项目build.gradle文件内
创建RecyclerView子项布局文件
效果描述
整体效果图,因为使用RelativeLayout布局的缘故,将侧滑按钮给覆盖了
我们接下来选中侧滑按钮,由此我们可以看见按钮的位置
将侧滑按钮释放出来,看一下效果
布局代码
创建RecyclerView适配器
描述
使用第三方API轮子时,不能像当初我们建立适配器一样继承一个RecyclerView.Adapter
,而要继承WeSwipeProxyAdapter
我们一般根据需求需要实现以下三个方法
@Override public float getSwipeWidth() { //侧滑按钮的宽度 } @Override public View needSwipeLayout() { //子项布局文件的最外层Layout } @Override public View onScreenView() { //子项布局文件的最外层Layout }
子项点击事件
//创建点击事件接口函数public interface ParkingOnClick{ void OnClickListener(View view,int Position); }//点击事件调用public void setOnclick(ParkingOnClick onclick) { this.onClick = onclick; }//引入布局View中return new ViewHolder(view,onClick);//内部类实现点击事件class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener//构造函数public ViewHolder(@NonNull View itemView,ParkingOnClick Listener)this.Listener = Listener;//点击事件外露@Override public void onClick(View v) { if (Listener != null) { Listener.OnClickListener(v, getPosition()); } }
适配器代码
public class ParkingAdapter extends WeSwipeProxyAdapter{ List data = new ArrayList<>( ); private ParkingOnClick onClick; public ParkingAdapter(List data ){ this.data = data; } @NonNull @Override public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View view = LayoutInflater.from( parent.getContext() ).inflate( R.layout.parking_item,parent,false ); return new ViewHolder(view,onClick); public void onBindViewHolder(@NonNull ViewHolder holder, int position) { ParkingData bookingData = data.get(position); holder.BigPlace.setText(bookingData.getBigPlace()); holder.SmallPlace.setText(bookingData.getSmallPlace()); holder.ParkingNumber.setText(bookingData.getParkingNumber() + ""); holder.Distance.setText(bookingData.getDistance()); holder.SideText.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { Log.d( "Da",1+"" ); if (onClick != null){ onClick.OnClickListener( v,position ); } } } ); public int getItemCount() { return data.size(); class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener,WeSwipeHelper.SwipeLayoutTypeCallBack { private TextView BigPlace,SmallPlace,Distance,ParkingNumber,SideText; private LinearLayout SideLayout; private ParkingOnClick Listener; public ViewHolder(@NonNull View itemView,ParkingOnClick Listener) { super( itemView ); this.Listener = Listener; BigPlace = itemView.findViewById( R.id.SimplePlace ); SmallPlace = itemView.findViewById( R.id.detailPlace ); Distance = itemView.findViewById( R.id.ParkingDistance ); ParkingNumber = itemView.findViewById( R.id.ParkingNumber ); SideText = itemView.findViewById( R.id.SideText ); SideLayout = itemView.findViewById( R.id.SideLayout ); } @Override public float getSwipeWidth() { return SideText.getWidth(); public View needSwipeLayout() { return SideLayout; public View onScreenView() { public void onClick(View v) { if (Listener != null) { Listener.OnClickListener(v, getPosition()); //回调接口 public interface ParkingOnClick{ void OnClickListener(View view,int Position); //点击事件 public void setOnclick(ParkingOnClick onclick) { this.onClick = onclick;}
应用
解析xml数据
private void InitData(){ String[] parkingArray = getResources().getStringArray(R.array.parking); for (int i = 0; i绑定
WeSwipe.attach(ParkingRecycler);private void InitRecycler(){ LinearLayoutManager manager = new LinearLayoutManager(this); ParkingRecycler.setLayoutManager(manager); adapter = new ParkingAdapter(dataList); ParkingRecycler.setAdapter(adapter); WeSwipe.attach(ParkingRecycler); }点击事件引用
adapter.setOnclick(new ParkingAdapter.ParkingOnClick() { @Override public void OnClickListener(View view, int Position) { //do anything... } });关于"Android侧滑按钮怎么实现"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。
按钮
侧滑
事件
布局
文件
子项
效果
知识
适配器
适配
代码
函数
外层
接口
方法
行业
语句
不同
实用
接下来
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
申请删除数据库
安徽正规软件开发服务保障
北京刘然软件开发
手机端如何访问服务器资源
编制网络安全预算相关文件
网络安全工作总结网信办
纸箱吸塑一体软件开发公司
阿里云服务器联系电话
网络技术与控制
ios软件开发 书籍
在导航窗格中打开数据库
软件开发入门教程
金山区网络安全审计系统咨询机构
电力系统网络安全处置方案
小学一年级班会网络安全方案
文县java软件开发
雷达科技和网络技术
进口单串口服务器价格
传统的软件开发主要采用
网络技术目标职业分析
移动服务器管理软件
网络安全法主题班会
sql数据库ccl
刀剑乱舞服务器
网络安全作文200字四年级
网络安全系统测试方案
药品数据库下载xls
战地5怎么找自己上局的服务器
加强国家网络安全体系建设
软件开发美工合同