一、本项目完成的功能
1.在上次作业类微信app中的一个可切换页面中实现下述功能
2.用列表显示若干个男歌手,女歌手和组合歌手,以及他们的分组名
3.实现顶部悬浮功能,即向上滑动展示下面的内容时,分组名可以在顶部悬浮,直到该分组内容向上滑动退出屏幕页面,分组名跟随分组内容退出屏幕页面
二、项目的具体步骤
1编写布局文件xml,此处需要修改一个xml文件,增加两个xml文件
在上次作业中的tab02.xml文件中,删除TextView,拖入RecyclerView,此时系统会自动导入RecyclerView相关的依赖包,稍等片刻等其导入完毕。再新建两个item.xml文件,内容为TextView,用来显示分组名和分组内容。
2编写java文件,此处需要修改一个java文件,增加两个java文件
在上次作业中的frdFragment文件中,重新编写有关函数,新建initList函数向列表中插入文字信息,新建initData函数通过拆分上述列表中的文字信息,向StickyData类中写入数据。新建addOnScrollListener函数实现吸顶效果,最后在主函数中依次实现这些方法即可。
新建适配器adapter.java文件,这里通过implement加入几个必要的方法,根据实际需求重写这些方法即可。最后写一个简单的StickyData类,作为frdFragment中使用数据的接口。这里页面控制文件frdFragment.java和adapter.java文件是必须要有的。
三、出现的问题及解决方法
此处报红原因是findViewById方法只能被用在Activity类,此处是Fragment类。
解决办法:在此之前使用onCreateView来创建视图,返回一个View对象,使用View对象中的findViewById方法。如下图:
四、效果展示
五、代码实现
代码仓库地址:https://gitee.com/lookevin/sticky-design