微信用户16210307012022年09月05日
588阅读

作品详情

项目地址:https://github.com/RQ527/KaiYan

KaiYan
一款看视频的app,接口全部来自开眼app,主要是观看视频功能,不局限于短视频。

整体界面采用tab+vp+fragment,app主题颜色是黑白。

技术简介
整体框架是retrofit+okhttp+flow+coroutines+livedata+viewmodel+paging3,查看图片用的第三方库Photoview,视频播放用的DKPlayVideo。

仓库层用flow发射数据,viewmodel用livedata将数据通知给ui层。

刷新控件是继承自LinearLayout的自定义控件,目前还有小问题,不能响应recyclerview的fling,不能与协调者布局结合使用,但能响应RV滑动一半去刷新,或者刷新一半去滑动RV,这也是我感觉不足的地方。

自己封装的banner采用vp+imagview+handler的形式,handle每隔一段时间将vp翻页,vp的页数无限多,初始从中间开始翻滚,达到左右两边无限滑动的效果。

亮点
简单包装了banner图

使用flow将不同状态的数据获取情况发送出去,以通知UI数据获取情况(加载中,加载失败,加载成功)

项目里用了vp转场动画,共享元素动画,增强视觉效果。

使用pging3实现上拉加载,自定义的刷新控件实现下拉刷新
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论