二
业务实现:
(重新设计了界面)
1.点击列表的某一项,跳转到详情页
2.点击详情页中的返回按钮,回到列表页
3.向左滑动列表的某一项,删除该项
4.删除列表某一项时弹出窗口询问是否删除
技术支持:
0.RecyclerView,RecyclerView.Adapter
1.Intent
2.startActivityForResult
3.ItemTouchHelpe,ItemTouchHelper.Callback
ItemTouchHelper是一个辅助类,用于处理RecyclerView的拖拽和滑动操作。它提供了方便的方法和回调来处理这些操作,并与RecyclerView进行绑定。在RecyclerView中实现拖拽和滑动的功能.
基本步骤:
创建ItemTouchHelper.Callback对象,该对象负责处理拖拽和滑动操作,并提供相应的回调方法。
实现ItemTouchHelper.Callback的相关方法,包括onMove()用于处理拖拽操作,onSwiped()用于处理滑动操作。
在适配器中创建ItemTouchHelper实例,并将其与RecyclerView进行绑定。
4.接口回调:
通过回调,实现自定义方法,类与类之间交互
5.AlertDialog
构建和显示对话框
效果展示:

关键代码解析(源码注释):
1.点击列表的某一项,跳转到详情页:
在点击某一列时,跳转到returnActivity详情页面,并将点击的列表项的文本值作为数据传递给目标Activity;

从Intent中获取数据,并将数据展示在指定的TextView控件中

2.点击详情页中的返回按钮,回到列表页
点击按钮后返回到前一个Activity,并传递一个结果码和Intent对象

由于我们需要返回的位置是MainActivity中的Fragment2,所以此处我们在MainActivity中接收intent对应的结果码来启动对应的界面

3.向左滑动列表的某一项,删除该项
接口:

接口回调:

滑动删除的逻辑实现

将控件与逻辑关联起来从而实现具体功能

4.删除列表某一项时弹出窗口询问是否删除

问题:
1:未解决:
在对列表的某一行进行删除的时候,发现如果取消删除,该行会消失(改行变空,但后者不会补齐),但是将该空白行遮盖住后,再次查看恢复原样
2.:已解决:
点击底部图案没有跳转到对应页面:
原因:图案的控件是ImageButtom,我监听的是其所属的LinearLayout
解决办法:将ImageButtom改为ImageView
在物理机上调试时:自己导入的图片作为图标模糊
原因:用的图,不会自适应优化
解决办法:使用mipmap :纹理映射技术,mipmap文件夹下的图标会通过Mipmap纹理技术进行优化。