课程目录:
├──1.kotlin简介和学习方法
| ├──01_kotlin课程简介_01.mp4 11.42M
| ├──02_kotlin学习方法_01.mp4 11.86M
| ├──03_kotlin选好教练车_01.mp4 11.81M
| ├──03_kotlin选好教练车_02.mp4 21.65M
| ├──04_kotlin你好世界_01.mp4 17.88M
| ├──05_kotlin变量与输出_01.mp4 10.33M
| └──05_kotlin变量与输出_02.mp4 14.47M
├──10.类,对象和接口(三)
| ├──38_kotlin面向对象-抽象类和接口_01.mp4 10.54M
| ├──38_kotlin面向对象-抽象类和接口_02.mp4 11.78M
| ├──38_kotlin面向对象-抽象类和接口_03.mp4 13.13M
| ├──38_kotlin面向对象-抽象类和接口_04.mp4 13.33M
| ├──39_kotlin面向对象-代理和委托_01.mp4 11.12M
| ├──39_kotlin面向对象-代理和委托_02.mp4 18.96M
| ├──40_kotlin面向对象-单例模式_01.mp4 11.35M
| ├──41_kotlin面向对象-枚举_01.mp4 9.46M
| ├──42_kotlin面向对象-印章类_01.mp4 10.46M
| └──42_kotlin面向对象-印章类_02.mp4 14.37M
├──11.高阶函数(一)
| ├──43_kotlin课程计划_01.mp4 11.57M
| ├──45_kotlin函数式编程入门_01.mp4 21.74M
| ├──46_kotlin图片处理_01.mp4 9.91M
| ├──46_kotlin图片处理_02.mp4 32.19M
| ├──48_kotlin高阶函数实战(传统函数演示)_01.mp4 15.52M
| └──48_kotlin高阶函数实战(传统函数演示)_02.mp4 16.96M
├──12.高阶函数(二)
| ├──49_kotlin高阶函数实战(传统需求实现的缺点)_01.mp4 15.46M
| ├──49_kotlin高阶函数实战(传统需求实现的缺点)_02.mp4 15.84M
| ├──50_kotlin高阶函数实战(map,filter,groupBy,minBy,maxBy,find,an_01.mp4 14.03M
| ├──50_kotlin高阶函数实战(map,filter,groupBy,minBy,maxBy,find,an_02.mp4 15.18M
| ├──50_kotlin高阶函数实战(map,filter,groupBy,minBy,maxBy,find,an_03.mp4 19.89M
| └──51_kotlin高阶函数实战-自定义dsl入门_01.mp4 20.02M
├──13.kotlin项目开发基础–gradle(一)
| ├──01_程序猿中的原始人_01.mp4 20.92M
| ├──02_gradle简单介绍_01.mp4 9.78M
| ├──03_gradle入门演示_01.mp4 21.89M
| ├──03_gradle入门演示_02.mp4 24.85M
| ├──04_java代码和kotlin代码共存_01.mp4 11.56M
| ├──04_java代码和kotlin代码共存_02.mp4 21.83M
| └──05_gradle的灵魂project和task_01.mp4 15.13M
├──14.kotlin项目开发基础–gradle(二)
| ├──01_gradle的依赖管理.mp4 9.85M
| ├──02_gradle任务的生命周期.mp4 13.96M
| ├──03_gradle任务集,默认属性和默认任务.mp4 21.67M
| ├──04_编写gradle增量式更新任务,效率是maven的100倍_01.mp4 12.40M
| ├──04_编写gradle增量式更新任务,效率是maven的100倍_02.mp4 23.81M
| └──05_gradle常见插件application,java,war_01.mp4 24.24M
├──15.kotlin项目开发基础–gradle(三)
| ├──01_gradle依赖管理入门(普通程序员的开发流程)_01.mp4 13.66M
| ├──01_gradle依赖管理入门(普通程序员的开发流程)_02.mp4 28.95M
| ├──01_gradle依赖管理入门(普通程序员的开发流程)_03.mp4 33.53M
| ├──02_gradle依赖管理(高级程序员如何添加依赖)_01.mp4 14.77M
| ├──02_gradle依赖管理(高级程序员如何添加依赖)_02.mp4 20.51M
| ├──03_gradle依赖管理的类比_01.mp4 16.26M
| ├──04_公共仓库和依赖配置阶段_01.mp4 30.73M
| └──05_gradle依赖冲突的解决_01.mp4 29.30M
├──16.kotlin项目开发基础–gradle(四)
| ├──01_gradle插件自定义扩展_01.mp4 19.59M
| ├──02_gradle插件自定义扩展_02.mp4 30.08M
| ├──02_gradle调用外部扩展_01.mp4 13.98M
| └──03_gradle的学习方法_01.mp4 32.53M
├──17.Kotlin坦克大战实战项目(一)
| ├──01_介绍_x1.1_01.mp4 19.01M
| ├──02_项目搭建_x1.1_01.mp4 16.04M
| ├──02_项目搭建_x1.1_02.mp4 24.23M
| ├──03_窗体回调的介绍_x1.1_01.mp4 20.80M
| ├──04_游戏中坐标,图像,声音,交互_x1.1_01.mp4 30.22M
| ├──05_游戏中窗体的创建_x1.1_01.mp4 17.62M
| └──05_游戏中窗体的创建_x1.1_02.mp4 23.81M
├──18.Kotlin坦克大战实战项目(二)
| ├──06_面向对象构建模型_x1.1_01.mp4 15.27M
| ├──06_面向对象构建模型_x1.1_02.mp4 36.87M
| ├──07_坦克大战中地图绘制_x1.1_01.mp4 16.38M
| ├──07_坦克大战中地图绘制_x1.1_02.mp4 36.66M
| ├──08_我方坦克绘制_x1.1_01.mp4 18.47M
| ├──08_我方坦克绘制_x1.1_02.mp4 18.70M
| ├──08_我方坦克绘制_x1.1_03.mp4 26.78M
| ├──09_我方坦克的移动_x1.1_01.mp4 16.74M
| ├──09_我方坦克的移动_x1.1_02.mp4 36.09M
| ├──10_移动碰撞检测业务逻辑分析实现-01_x1.1_01.mp4 14.98M
| ├──10_移动碰撞检测业务逻辑分析实现-01_x1.1_02.mp4 16.80M
| └──10_移动碰撞检测业务逻辑分析实现-01_x1.1_03.mp4 34.59M
├──19.Kotlin坦克大战实战项目(三)
| ├──11_移动碰撞检测业务逻辑分析实现-02_x1.1_01.mp4 18.26M
| ├──11_移动碰撞检测业务逻辑分析实现-02_x1.1_02.mp4 21.33M
| ├──12_移动碰撞检测业务逻辑分析实现-03_x1.1_01.mp4 14.25M
| ├──12_移动碰撞检测业务逻辑分析实现-03_x1.1_02.mp4 18.86M
| ├──12_移动碰撞检测业务逻辑分析实现-03_x1.1_03.mp4 20.82M
| ├──13_结构介绍_x1.1_01.mp4 10.81M
| ├──14_子弹显示_x1.1_01.mp4 32.49M
| ├──15_闭包计算子弹的位置_x1.1_01.mp4 15.54M
| ├──15_闭包计算子弹的位置_x1.1_02.mp4 14.30M
| ├──15_闭包计算子弹的位置_x1.1_03.mp4 17.95M
| └──15_闭包计算子弹的位置_x1.1_04.mp4 27.27M
├──2.Kotlin简介和学习方法(二)
| ├──06_kotlin二进制基础_01.mp4 9.23M
| ├──07_kotlin变量和常量&类型推断_01.mp4 23.69M
| └──08_kotlin变量取值范围_01.mp4 13.87M
├──20.Kotlin坦克大战实战项目(四)
| ├──16_子弹方向计算和子弹飞行_x1.1_01.mp4 15.59M
| ├──16_子弹方向计算和子弹飞行_x1.1_02.mp4 18.99M
| ├──16_子弹方向计算和子弹飞行_x1.1_03.mp4 32.02M
| ├──17_界面中元素的回收_x1.1_01.mp4 24.22M
| ├──17_界面中元素的回收_x1.1_02.mp4 25.49M
| ├──18_攻与受业务逻辑分析_x1.1_01.mp4 35.08M
| ├──19_攻与受业务逻辑分析实现-02_x1.1_01.mp4 24.54M
| ├──19_攻与受业务逻辑分析实现-02_x1.1_02.mp4 27.87M
| └──20_攻与受业务逻辑分析实现-03_x1.1_01.mp4 34.98M
├──21.Kotlin坦克大战实战项目(五)
| ├──21_爆炸物的显示_x1.1_01.mp4 19.37M
| ├──21_爆炸物的显示_x1.1_02.mp4 33.18M
| ├──22_敌方坦克绘制_x1.1_01.mp4 26.36M
| ├──23_敌方坦克的自动移动_x1.1_01.mp4 26.63M
| ├──23_敌方坦克的自动移动_x1.1_02.mp4 21.35M
| ├──23_敌方坦克的自动移动_x1.1_03.mp4 25.80M
| ├──24_敌方坦克的自动发射子弹_x1.1_01.mp4 48.71M
| ├──25_双方坦克相互伤害_x1.1_01.mp4 31.81M
| └──25_双方坦克相互伤害_x1.1_02.mp4 36.51M
├──22.Kotlin坦克大战实战项目(六)
| ├──26_大本营的绘制_x1.1_01.mp4 34.12M
| ├──27_大本营特性的实现_x1.1_01.mp4 26.41M
| ├──27_大本营特性的实现_x1.1_02.mp4 29.25M
| ├──28_游戏中细节的修复_x1.1_01.mp4 43.15M
| ├──29_我方游戏结束的实现_x1.1_01.mp4 22.52M
| ├──29_我方游戏结束的实现_x1.1_02.mp4 35.05M
| ├──30_敌方游戏结束的实现_x1.1_01.mp4 24.13M
| └──30_敌方游戏结束的实现_x1.1_02.mp4 32.30M
├──23.Kotlin坦克大战实战项目(七)
| ├──31_gradle打包游戏_x1.1_01.mp4 25.13M
| ├──31_gradle打包游戏_x1.1_02.mp4 21.44M
| └──31_gradle打包游戏_x1.1_03.mp4 31.12M
├──24.kotlin加密解密
| ├──01.课程介绍_01.mp4 3.21M
| ├──02.ascii编码_01.mp4 37.37M
| ├──03.凯撒加密算法_01.mp4 18.20M
| ├──03.凯撒加密算法_02.mp4 33.69M
| ├──04.频度分析法破解凯撒加密算_01.mp4 37.50M
| └──05.Byte和bit_01.mp4 11.12M
├──25.kotlin加密解密(二)
| ├──06.常见对称加密算法介绍_01.mp4 5.91M
| ├──07.DES加密和解密_01.mp4 30.93M
| ├──07.DES加密和解密_02.mp4 46.64M
| ├──08.Base64编码和解_01.mp4 47.45M
| ├──09.AES加密和解密_01.mp4 36.29M
| ├──09.AES加密和解密_02.mp4 51.17M
| └──10.DES和AES秘钥长度详解_01.mp4 16.58M
├──26.kotlin加密解密(三)
| ├──11.工作模式填充模式_01.mp4 10.66M
| ├──12.填充模式工作模式使用_01.mp4 50.25M
| ├──13.对称加密应用实战_01.mp4 21.34M
| ├──13.对称加密应用实战_02.mp4 24.40M
| ├──14.非对称加密介绍_01.mp4 14.26M
| └──15.非对称加密RSA-生成秘钥对_01.mp4 52.60M
├──27.kotlin加密解密(四)
| ├──16.非对称加密RSA-加密_01.mp4 36.79M
| ├──17.非对称加密RSA-分段加密_01.mp4 20.75M
| ├──17.非对称加密RSA-分段加密_02.mp4 56.76M
| ├──18.非对称加密RSA-分段解密_01.mp4 64.05M
| ├──19.RSA保存秘钥对_01.mp4 70.90M
| └──20.总结RSA特点_01.mp4 2.81M
├──28.kotlin加密解密(五)
| ├──21.消息摘要介绍_01.mp4 8.31M
| ├──22.消息摘要md5_01.mp4 55.96M
| ├──23.消息摘要sha1和sha256_01.mp4 52.08M
| ├──24.消息摘要应用实战_01.mp4 20.89M
| ├──25.数字签名_01.mp4 32.32M
| └──25.数字签名_02.mp4 41.38M
├──29.kotlin加密解密(六)
| ├──26.数字签名流程图分析_01.mp4 20.08M
| └──27.加密算法总结_01.mp4 10.26M
├──3.kotlin基础
| ├──09_kotlin函数入门_01.mp4 20.31M
| ├──10_kotlin语言boolean_01.mp4 20.01M
| ├──11_kotlin命令行交互式终端_01.mp4 21.62M
| ├──12_kotlin函数加强_01.mp4 9.35M
| ├──12_kotlin函数加强_02.mp4 22.38M
| └──13_kotlin函数作业讲解_01.mp4 14.76M
├──30.kotlin增量更新
| ├──01.课程介绍_01.mp4 7.85M
| ├──02.Kotlin配置_01.mp4 18.50M
| ├──03.增量更新的集成_01.mp4 40.10M
| ├──04.生成头条patch包_01.mp4 12.72M
| └──05.更新今日头条完成_01.mp4 26.89M
├──31.kotlin热修复
| ├──01.课程介绍_01.mp4 7.63M
| ├──02.集成阿里热修复框架AndFix_01.mp4 37.83M
| ├──03.热修复完成_01.mp4 36.54M
| └──04.热修复的不足_01.mp4 42.16M
├──32.kotlin第三方支付
| ├──01.课程介绍及APP效果展示_01.mp4 7.31M
| ├──02.Kotlin配置_01.mp4 12.33M
| ├──03.支付宝开发者平台SDKDemo运行_01.mp4 22.01M
| ├──04.支付宝支付秘钥配_01.mp4 22.34M
| └──05.第三方支付四部曲分析_01.mp4 22.62M
├──33.kotlin第三方支付(二)
| ├──06.真机访问本地服务_01.mp4 13.45M
| ├──07.支付宝支付前2步_01.mp4 35.47M
| ├──08.支付宝支付集成SDK_01.mp4 23.79M
| ├──09.支付宝支付第3步_01.mp4 32.20M
| ├──10.支付宝支付第4步_01.mp4 46.65M
| └──11.同步返回异步通知_01.mp4 33.17M
├──34.kotlin与JavaScript的混合开发
| ├──01.课程介绍_01.mp4 6.50M
| ├──02.Kotlin配置_01.mp4 19.10M
| ├──03.WebView初始化_01.mp4 32.79M
| ├──04.Kotlin与H5通信方式一(H5主动)_01.mp4 15.33M
| ├──04.Kotlin与H5通信方式一(H5主动)_02.mp4 19.37M
| └──05.Kotlin与H5通信方式二(Kotlin主动)_01.mp4 16.19M
├──35.kotlin与JavaScript的混合开发(二)
| ├──06.Kotlin与H5通信方式三(callback)_01.mp4 28.87M
| ├──06.Kotlin与H5通信方式三(callback)_02.mp4 23.19M
| ├──06.Kotlin与H5通信方式三(callback)_03.mp4 25.93M
| ├──07.H5回调kotlin获取酒店数据_01.mp4 37.16M
| ├──08.H5在线模板刷新数据_01.mp4 28.14M
| ├──09.kotlin仿QQ底部弹出Dialog_01.mp4 24.47M
| ├──09.kotlin仿QQ底部弹出Dialog_02.mp4 44.80M
| ├──10.查看系统源码-调用系统拨号功能_01.mp4 23.00M
| ├──10.查看系统源码-调用系统拨号功能_02.mp4 38.90M
| └──11.本地模板打包上线_01.mp4 21.19M
├──36.kotlin与https编程
| ├──01.课程介绍及APP效果展示_01.mp4 8.64M
| ├──02.kotlin配置_01.mp4 13.11M
| ├──03.https服务器配置与keystore生成_01.mp4 40.38M
| ├──03.https服务器配置与keystore生成_02.mp4 36.21M
| ├──04.https客户端编设置信任管理_01.mp4 25.47M
| ├──04.https客户端编设置信任管理_02.mp4 74.09M
| ├──05.https客户端编生成证书_01.mp4 78.50M
| └──06.https编程总结_01.mp4 4.96M
├──37.kotlin项目实战-手机影音
| ├──00.手机影音项目介绍_01.mp4 30.62M
| ├──01.项目准备_01.mp4 36.91M
| ├──02.基类抽取_01.mp4 36.06M
| ├──03.欢迎界面_01.mp4 41.86M
| ├──04.抽取startactivityandfinish_01.mp4 17.07M
| └──05.主界面布局_01.mp4 38.47M
├──38.kotlin项目实战-手机影音(二)
| ├──06.toolbar处理_01.mp4 26.93M
| ├──07.设置菜单点击事件处理_01.mp4 49.81M
| ├──08.设置界面处理_01.mp4 23.68M
| ├──08.设置界面处理_02.mp4 37.85M
| ├──09.主界面tab切换_01.mp4 26.39M
| ├──09.主界面tab切换_02.mp4 23.45M
| ├──10.home界面适配_01.mp4 22.32M
| ├──10.home界面适配_02.mp4 27.39M
| └──10.home界面适配_03.mp4 28.68M
├──39.kotlin项目实战-手机影音(三)
| ├──11.获取首页网络数据_01.mp4 43.46M
| ├──12.解析数据刷新列表_01.mp4 35.34M
| ├──13.列表条目view更新_01.mp4 39.30M
| ├──14.首页下拉刷新处理_01.mp4 38.61M
| ├──15.上拉加载更多_01.mp4 23.02M
| └──15.上拉加载更多_02.mp4 50.83M
├──4.Kotlin基础(二)
| ├──14_kotlin字符串模版_01.mp4 19.11M
| ├──15_kotlin条件控制if和else_01.mp4 14.78M
| ├──16_kotlin字符串比较_01.mp4 11.40M
| ├──17_kotlin空值处理_01.mp4 13.66M
| ├──18_kotlin的when表达式_01.mp4 11.77M
| └──18_kotlin的when表达式_02.mp4 16.25M
├──40.kotlin项目实战-手机影音(四)
| ├──16.首页mvp重构_01.mp4 26.17M
| ├──16.首页mvp重构_02.mp4 36.58M
| ├──17.网络框架的封_01.mp4 24.12M
| ├──17.网络框架的封_02.mp4 43.91M
| ├──18.通过封装的网络框架加载首页数据_01.mp4 26.80M
| ├──18.通过封装的网络框架加载首页数据_02.mp4 51.93M
| ├──19.home界面总结以及view解绑_01.mp4 30.48M
| └──20.悦单条目自定义及界面适配_01.mp4 44.92M
├──41.kotlin项目实战-手机影音(五)
| ├──21.加载悦单列表数据刷新列表_01.mp4 30.44M
| ├──21.加载悦单列表数据刷新列表_02.mp4 35.67M
| ├──22.悦单条目view初始化_01.mp4 26.46M
| ├──22.悦单条目view初始化_02.mp4 43.01M
| ├──23.悦单界面下拉刷新和上拉加载更多_01.mp4 31.07M
| ├──23.悦单界面下拉刷新和上拉加载更多_02.mp4 58.74M
| ├──24.基类抽取思路_01.mp4 33.74M
| ├──25.抽取view以及presenter和adapter的基类_01.mp4 28.89M
| └──25.抽取view以及presenter和adapter的基类_02.mp4 49.69M
├──42.kotlin项目实战-手机影音(六)
| ├──26.实现BaseListFragment的抽取_01.mp4 14.13M
| ├──26.实现BaseListFragment的抽取_02.mp4 24.91M
| ├──27.加载mv界面区域数据_01.mp4 42.77M
| ├──28.mv界面viewpager适配_01.mp4 22.72M
| ├──28.mv界面viewpager适配_02.mp4 36.74M
| ├──29.tablayout适配_01.mp4 23.01M
| ├──30.mv每一个界面显示准备_01.mp4 31.86M
| └──30.mv每一个界面显示准备_02.mp4 28.58M
├──43.kotlin项目实战-手机影音(七)
| ├──31.mv每一个界面列表显示_01.mp4 24.86M
| ├──31.mv每一个界面列表显示_02.mp4 30.06M
| ├──32.mv列表条目view控件初始化_01.mp4 36.47M
| ├──33.通过kotlin函数回调处理mv界面条目点击事件_01.mp4 23.08M
| ├──33.通过kotlin函数回调处理mv界面条目点击事件_02.mp4 34.40M
| ├──34.条目点击跳转到播放界面_01.mp4 53.01M
| └──35.mediaplaer生命周期回顾_01.mp4 37.27M
├──44.kotlin项目实战-手机影音(八)
| ├──36.通过TextureView进行视频播放_01.mp4 28.65M
| ├──36.通过TextureView进行视频播放_02.mp4 39.87M
| ├──37.集成vitamio播放框架_01.mp4 26.32M
| ├──37.集成vitamio播放框架_02.mp4 32.45M
| ├──38.ijkplayer集成_01.mp4 28.26M
| ├──38.ijkplayer集成_02.mp4 38.33M
| ├──39.节操播放器集成_01.mp4 61.06M
| ├──40.响应应用外视频播放请求_01.mp4 24.52M
| └──40.响应应用外视频播放请求_02.mp4 47.58M
├──45.kotlin项目实战-手机影音(九)
| ├──41.视频播放界面其他功能_01.mp4 55.61M
| ├──42.视频功能总结_01.mp4 39.95M
| ├──43.通过MediaProvider获取音乐列表数据_01.mp4 37.09M
| ├──43.通过MediaProvider获取音乐列表数据_02.mp4 38.96M
| ├──43.通过MediaProvider获取音乐列表数据_03.mp4 30.24M
| ├──44.异步查询音乐数据_01.mp4 51.58M
| └──45.通过AsyncQueryHandler异步查询音乐列表_01.mp4 47.48M
├──46.kotlin项目实战-手机影音(十)
| ├──46.条目view自定义和CursorAdapter简介_01.mp4 53.68M
| ├──47.v榜界面列表适配_01.mp4 24.81M
| ├──47.v榜界面列表适配_02.mp4 34.21M
| ├──47.v榜界面列表适配_03.mp4 42.99M
| ├──48.cursor关闭和总结_01.mp4 25.02M
| ├──49.android6.0动态权限申请_01.mp4 34.06M
| ├──49.android6.0动态权限申请_02.mp4 42.53M
| ├──50.点击音乐列表条目跳转到音乐播放界面_01.mp4 25.66M
| └──50.点击音乐列表条目跳转到音乐播放界面_02.mp4 44.23M
├──47.kotlin项目实战-手机影音(十一)
| ├──51.音乐播放界面布局及音乐播放_01.mp4 41.84M
| ├──52.service生命周期回顾_01.mp4 26.30M
| ├──52.service生命周期回顾_02.mp4 34.33M
| ├──53.开启service播放音乐_01.mp4 25.84M
| ├──53.开启service播放音乐_02.mp4 21.55M
| ├──53.开启service播放音乐_03.mp4 34.06M
| ├──54.创建intent的第二种方式_01.mp4 23.78M
| └──55.onStartCommand返回值处理_01.mp4 40.91M
├──48.kotlin项目实战-手机影音(十二)
| ├──56.播放状态按钮处理_01.mp4 42.83M
| ├──57.通过EventBus通知界面更新_01.mp4 24.56M
| ├──57.通过EventBus通知界面更新_02.mp4 25.52M
| ├──58.歌曲名和歌手名更新_01.mp4 14.48M
| ├──59.播放动画处理_01.mp4 33.23M
| ├──60.进度更新_01.mp4 22.48M
| ├──60.进度更新_02.mp4 21.97M
| └──60.进度更新_03.mp4 38.00M
├──49.kotlin项目实战-手机影音(十三)
| ├──61.进度条更新和handler内存泄漏处理_01.mp4 31.07M
| ├──62.拖动进度条更新进度_01.mp4 28.20M
| ├──63.播放完成自动播放下一曲_01.mp4 26.23M
| ├──64.切换播放模式_01.mp4 30.40M
| └──65.播放模式更新和保存_01.mp4 24.88M
├──5.Kotlin基础(三)
| ├──19_kotlin的loop和Range_01.mp4 22.10M
| └──20_kotlin的list和map入门_01.mp4 14.58M
├──50.kotlin项目实战-手机影音(十四)
| ├──66.上一曲和下一曲_01.mp4 24.63M
| ├──67.切换歌曲多个歌曲同时播放问题解决_01.mp4 16.45M
| ├──68.再次播放同一首歌曲处理_01.mp4 22.14M
| ├──68.再次播放同一首歌曲处理_02.mp4 29.79M
| ├──69.显示列表popwindow_01.mp4 23.45M
| ├──69.显示列表popwindow_02.mp4 28.49M
| └──70.列表popwindow焦点和返回按钮事件处理_01.mp4 32.82M
├──51.kotlin项目实战-手机影音(十五)
| ├──71.弹出播放列表适配及条目点击事件处理_01.mp4 28.54M
| ├──71.弹出播放列表适配及条目点击事件处理_02.mp4 24.10M
| ├──71.弹出播放列表适配及条目点击事件处理_03.mp4 31.02M
| ├──72.播放列表popwindow弹出和隐藏的动画_01.mp4 15.95M
| ├──73.播放列表显示和隐藏背景处理_01.mp4 38.01M
| ├──74.创建Notification_01.mp4 46.33M
| └──75.通知栏点击事件处理_01.mp4 25.04M
├──52.kotlin项目实战-手机影音(十六)
| ├──76.自定义通知_01.mp4 47.75M
| ├──77.notification创建流程总结_01.mp4 13.36M
| ├──78.播放音乐显示通知_01.mp4 47.03M
| ├──79.通知栏主体点击处理_01.mp4 23.41M
| ├──79.通知栏主体点击处理_02.mp4 23.78M
| └──80.通知栏上一曲和下一曲以及状态更新按钮点击事件_01.mp4 36.88M
├──53.kotlin项目实战-手机影音(十七)
| ├──81.歌词自定义思路_01.mp4 16.01M
| ├──82.单行居中文本绘制_01.mp4 22.17M
| ├──82.单行居中文本绘制_02.mp4 34.24M
| ├──83.设置字体颜色和大小以及确定文本x位置的第二种方式_01.mp4 28.21M
| ├──84.多行居中歌词绘制思路_01.mp4 32.64M
| ├──85.多行歌词绘制_01.mp4 23.79M
| └──85.多行歌词绘制_02.mp4 24.80M
├──54.kotlin项目实战-手机影音(十八)
| ├──86.歌词播放思路_01.mp4 17.35M
| ├──87.歌词播放_01.mp4 34.95M
| ├──88.歌词滚动思路_01.mp4 26.45M
| ├──89.歌词滚动_01.mp4 42.67M
| └──90.歌词绘制总结_01.mp4 14.89M
├──55.kotlin项目实战-手机影音(十九)
| ├──91.歌词解析_01.mp4 20.64M
| ├──91.歌词解析_02.mp4 19.15M
| ├──91.歌词解析_03.mp4 37.88M
| ├──92.歌词文件加载util类_01.mp4 12.42M
| ├──93.LyricView中实现歌词解析_01.mp4 55.36M
| ├──94.手势调节歌词-手指按下和松开处理_01.mp4 23.70M
| └──95.手指拖动歌词移动_01.mp4 33.87M
├──56.kotlin项目实战-手机影音(二十)
| ├──96.居中行重新确定_01.mp4 17.07M
| ├──97.居中行重新确定存在的问题解决_01.mp4 21.05M
| ├──97.居中行重新确定存在的问题解决_02.mp4 30.34M
| └──98.拖动歌词更新进度_01.mp4 30.13M
├──57.kotlin-即时通讯
| ├──01-即时通讯项目介绍_01.mp4 19.30M
| ├──02-IM介绍_01.mp4 24.43M
| ├──03-MVC、MVP和MVVM_01.mp4 43.51M
| ├──04-版本配置_01.mp4 20.52M
| └──05-资源拷贝_01.mp4 5.94M
├──58.kotlin-即时通讯(二)
| ├──06-基类的创建_01.mp4 26.81M
| ├──07-Git版本控制_01.mp4 5.40M
| ├──08-Splash界面布局_01.mp4 15.63M
| ├──09-Splash界面MVP协议_01.mp4 16.40M
| └──10-Splash界面View层的实现_01.mp4 25.77M
├──59.kotlin-即时通讯(三)
| ├──11-Splash界面Presenter层的实现_01.mp4 17.21M
| ├──12-Splash界面Model层的实现_01.mp4 36.60M
| ├──12-Splash界面Model层的实现_02.mp4 35.28M
| ├──13-登陆界面布局_01.mp4 12.12M
| ├──14-登陆界面MVP协议_01.mp4 11.57M
| └──15-登陆界面View层的实现_01.mp4 43.37M
├──6.函数的定义和调用
| ├──21_kotlin函数和函数式表达式_01.mp4 12.88M
| ├──22_kotlin默认参数和具名参数_01.mp4 11.76M
| ├──22_kotlin默认参数和具名参数_02.mp4 16.76M
| ├──23_kotlin字符串和数字之间的转换_01.mp4 9.13M
| ├──24_kotlin人机交互_01.mp4 18.40M
| └──25_kotlin异常处理_01.mp4 15.16M
├──60.kotlin-即时通讯(四)
| ├──16-登陆界面Presenter层实现_01.mp4 19.93M
| ├──16-登陆界面Presenter层实现_02.mp4 30.88M
| ├──17-登陆界面Model层实现_01.mp4 43.37M
| ├──18-隐藏软件盘_01.mp4 21.60M
| ├──19-动态权限申请_01.mp4 40.50M
| └──20-注册界面布局_01.mp4 19.15M
├──61.kotlin-即时通讯(五)
| ├──21-注册界面MVP协议_01.mp4 13.51M
| ├──22-注册界面View层的实现_01.mp4 12.14M
| ├──23-注册界面Presenter层的实现_01.mp4 34.89M
| ├──24-注册流程分析_01.mp4 7.96M
| └──25-Bmob的集成_01.mp4 50.05M
├──62.kotlin-即时通讯(六)
| ├──26-注册到Bmob_01.mp4 24.22M
| ├──27-注册到环信_01.mp4 46.09M
| ├──28-用户名已注册处理_01.mp4 24.31M
| ├──29-主界面布局以及包重构_01.mp4 15.26M
| ├──30-Fragment的切换_01.mp4 22.01M
| └──30-Fragment的切换_02.mp4 51.37M
├──63.kotlin-即时通讯(七)
| ├──31-动态界面的布局_01.mp4 17.12M
| ├──32-退出登录的实现_01.mp4 24.92M
| ├──33-联系人布局的初始化_01.mp4 23.73M
| ├──34-联系人列表条目的布局_01.mp4 13.18M
| └──35-联系人RecyclerView的初始化_01.mp4 24.45M
├──64.kotlin-即时通讯(八)
| ├──36-联系人界面MVP协议_01.mp4 8.10M
| ├──37-联系人界面View层的实现_01.mp4 9.13M
| ├──38-联系人界面Presenter层和Model层的实现_01.mp4 24.97M
| ├──39-联系人列表的刷新_01.mp4 41.85M
| └──40-联系人列表是否显示首字符_01.mp4 30.87M
├──65.kotlin-即时通讯(九)
| ├──41-点击联系人跳转到聊天界面_01.mp4 17.51M
| ├──42-长按弹出删除好友的对话框_01.mp4 26.75M
| ├──43-删除好友_01.mp4 13.81M
| ├──44-删除好友后刷新联系人列表_01.mp4 28.77M
| ├──45-SlideBar的绘制_01.mp4 28.79M
| └──45-SlideBar的绘制_02.mp4 28.78M
├──66.kotlin-即时通讯(十)
| ├──46-绘制居中文本_01.mp4 31.56M
| ├──47-SlideBar背景的处理_01.mp4 18.57M
| ├──48-点击SlideBar获取字母_01.mp4 43.46M
| ├──49-SlideBar的接口回调_01.mp4 31.29M
| └──50-RecyclerView跟随滚动_01.mp4 18.87M
├──67.kotlin-即时通讯(十一)
| ├──51-添加好友界面布局实现_01.mp4 21.91M
| ├──52-添加好友界面RecyclerView布局实现_01.mp4 35.79M
| ├──53-添加好友界面MVP协议_01.mp4 6.26M
| ├──54-添加好友界面View层的实现_01.mp4 7.22M
| └──55-添加好友界面Presenter层实现_01.mp4 22.24M
├──68.kotlin-即时通讯(十二)
| ├──56-添加好友界面Model层实现_01.mp4 21.05M
| ├──57-添加好友界面RecyclerView的刷新_01.mp4 42.55M
| ├──58-数据库表的创建_01.mp4 12.90M
| ├──59-DatabaseHelper的创建_01.mp4 27.76M
| └──60-联系人实体类的创建_01.mp4 7.90M
├──69.kotlin-即时通讯(十三)
| ├──61-保存联系人到数据库_01.mp4 28.26M
| ├──62-查询所有的联系人_01.mp4 13.28M
| ├──63-删除所有的联系人_01.mp4 3.94M
| ├──64-是否添加过好友的判断_01.mp4 26.03M
| └──65-发送好友请求的过程_01.mp4 7.89M
├──7.函数的定义和调用(二)
| ├──26_kotlin递归_01.mp4 9.41M
| ├──26_kotlin递归_02.mp4 14.75M
| ├──27_kotlin尾递归优化_01.mp4 11.92M
| └──27_kotlin尾递归优化_02.mp4 19.80M
├──70.kotlin-即时通讯(十四)
| ├──66-发送添加好友的请求_01.mp4 17.94M
| ├──67-添加好友成功后联系人列表的刷新_01.mp4 12.94M
| ├──68-联系人界面代码的抽取_01.mp4 19.71M
| ├──69-聊天界面布局的初始化_01.mp4 40.42M
| └──70-收发消息的布局实现_01.mp4 14.65M
├──71.kotlin-即时通讯(十五)
| ├──71-发送一条消息的MVP协议_01.mp4 8.53M
| ├──72-发送一条消息View层实现_01.mp4 16.40M
| ├──73-发送一条消息Presenter层实现_01.mp4 21.48M
| ├──74-发送一条消息Model层实现_01.mp4 22.02M
| └──75-MessageListAdapter的创建_01.mp4 36.29M
├──72.kotlin-即时通讯(十六)
| ├──76-发送消息的刷新_01.mp4 41.79M
| ├──77-接受一条消息的实现_01.mp4 41.62M
| ├──78-接受一条消息的布局刷新_01.mp4 19.99M
| ├──79-收发消息后滚动到底部_01.mp4 15.51M
| └──80-消息时间间隔过长不显示时间戳_01.mp4 37.37M
├──73.kotlin-即时通讯(十七)
| ├──81-初始化聊天记录_01.mp4 18.98M
| ├──82-加载更多聊天记录_01.mp4 44.70M
| ├──83-会话界面布局_01.mp4 5.95M
| ├──84-会话界面RecyclerView的布局实现_01.mp4 25.72M
| └──85-会话界面数据加载_01.mp4 17.32M
├──74.kotlin-即时通讯(十八)
| ├──86-会话界面列表的刷新_01.mp4 27.76M
| ├──87-收到消息后刷新会话列表_01.mp4 15.39M
| ├──88-会话列表点击跳转到聊天界面_01.mp4 14.91M
| ├──89-底部导航条未读消息的更新_01.mp4 27.28M
| └──90-在Application类中监听消息.mp4 7.61M
├──75.kotlin-即时通讯(十九)
| ├──91-判断App是否在前台_01.mp4 13.89M
| ├──92-收到消息后播放音效_01.mp4 22.26M
| ├──93-后台收到消息后弹出通知_01.mp4 23.10M
| ├──94-点击通知进入聊天界面_01.mp4 14.10M
| ├──95-TaskStackBuilder的使用_01.mp4 13.74M
| └──96-多设备登陆处理_01.mp4 11.86M
├──76.Kotlin-黑马外卖第一天(一)
| ├──1.创建工程_01.mp4 11.11M
| ├──10.适配图片_01.mp4 8.96M
| ├──2.整体布局_01.mp4 38.95M
| ├──3.底部选项卡_01.mp4 19.91M
| ├──3.底部选项卡_02.mp4 22.23M
| ├──4.fragment切换_01.mp4 34.80M
| ├──5.侵入状态栏效果以及虚拟按键处理_01.mp4 23.16M
| ├──5.侵入状态栏效果以及虚拟按键处理_02.mp4 34.25M
| ├──6.扩展函数的使用_01.mp4 6.84M
| ├──7.列表视图的实现_01.mp4 21.59M
| ├──7.列表视图的实现_02.mp4 44.48M
| ├──8.多类型条目的支持_01.mp4 30.76M
| ├──9.挂载真实布局_01.mp4 36.92M
| └──9.挂载真实布局_02.mp4 47.70M
├──77.Kotlin-黑马外卖第一天(二)
| ├──11.颜色渐变的计算_01.mp4 49.42M
| ├──12.首页接口校验_01.mp4 23.18M
| ├──12.首页接口校验_02.mp4 36.82M
| ├──13.MVP的分析以及整体编码_01.mp4 16.58M
| ├──13.MVP的分析以及整体编码_02.mp4 19.78M
| ├──14.Retrofit的配置_01.mp4 20.01M
| ├──14.Retrofit的配置_02.mp4 22.18M
| ├──15.Retrofit的请求数据_01.mp4 25.82M
| ├──16.解析首页数据_01.mp4 51.54M
| ├──17.展示首页数据_01.mp4 36.82M
| ├──18.使用dagger2解耦view和Presenter_01.mp4 23.09M
| ├──18.使用dagger2解耦view和Presenter_02.mp4 24.21M
| ├──19.dagger2原理分析_01.mp4 29.34M
| ├──20.首页商家item赋值_01.mp4 28.68M
| └──20.首页商家item赋值_02.mp4 38.99M
├──78.Kotlin-黑马外卖第二天(一)
| ├──1.用户中心页面跳转_01.mp4 26.62M
| ├──10.ORM处理user_01.mp4 18.06M
| ├──10.ORM处理user_02.mp4 32.64M
| ├──2.短信安全原理_01.mp4 22.34M
| ├──3.配置短信验证环境_01.mp4 65.62M
| ├──4.获取验证码的实现_01.mp4 64.71M
| ├──5.提交验证码的实现_01.mp4 29.98M
| ├──6.验证码倒计时效果_01.mp4 21.55M
| ├──6.验证码倒计时效果_02.mp4 28.21M
| ├──7.登录页面校验_01.mp4 34.69M
| ├──8.网络请求的封装_01.mp4 26.93M
| ├──9.解析数据和登录后刷新UI_01.mp4 20.42M
| └──9.解析数据和登录后刷新UI_02.mp4 38.68M
├──79.Kotlin-黑马外卖第二天(二)
| ├──11.ORMlite的基本使用_01.mp4 23.32M
| ├──11.ORMlite的基本使用_02.mp4 32.93M
| ├──12.新老用户区分统计_01.mp4 19.47M
| ├──12.新老用户区分统计_02.mp4 41.02M
| ├──13.Ormlite事务处理_01.mp4 16.92M
| ├──13.Ormlite事务处理_02.mp4 35.31M
| ├──14.订单界面以及接口校验_01.mp4 31.58M
| ├──15.获取订单列表_01.mp4 19.76M
| ├──15.获取订单列表_02.mp4 23.32M
| ├──16.展示订单数据_01.mp4 23.54M
| ├──16.展示订单数据_02.mp4 33.53M
| ├──17.下拉刷新_01.mp4 19.44M
| ├──17.下拉刷新_02.mp4 39.27M
| ├──18.订单需求详细分析_01.mp4 26.00M
| ├──19.极光推送环境配置_01.mp4 44.62M
| ├──19.极光推送环境配置_02.mp4 44.49M
| └──20.推送实现以及控制台_01.mp4 43.12M
├──8.类,对象和接口(一)
| ├──28_kotlin新的篇章idea使用入门_01.mp4 7.89M
| ├──29_kotlin面向对象入门_01.mp4 10.15M
| ├──29_kotlin面向对象入门_02.mp4 15.97M
| ├──30_kotlin静态属性和动态行为_01.mp4 11.11M
| ├──31_kotlin面向对象_01.mp4 8.07M
| └──32_kotlin面向对象实战-洗衣机_01.mp4 23.85M
├──80.Kotlin-黑马外卖第二天(三)
| ├──21.自定义消息的消息内容与附加字段_01.mp4 42.04M
| ├──22.图解观察者模式_01.mp4 21.99M
| ├──22.图解观察者模式_02.mp4 18.41M
| ├──23.观察者实现的三个步骤_01.mp4 34.74M
| ├──24.订单自动刷新_01.mp4 28.32M
| ├──25.Rxjava与Retrofit连用_01.mp4 19.24M
| └──25.Rxjava与Retrofit连用_02.mp4 36.67M
├──81.Kotlin-黑马外卖第三天(一)
| ├──1.挂载详情页布局_01.mp4 26.54M
| ├──1.挂载详情页布局_02.mp4 29.78M
| ├──10.点击左侧后跳转到该类别第一个商品_01.mp4 36.38M
| ├──2.展示详情页fragment与V13包的引入_01.mp4 20.73M
| ├──2.展示详情页fragment与V13包的引入_02.mp4 41.52M
| ├──3.指示器与数据接口测试_01.mp4 52.31M
| ├──4.获取商品类别_01.mp4 18.15M
| ├──4.获取商品类别_02.mp4 38.28M
| ├──5.左侧商品类别列表的实现_01.mp4 21.26M
| ├──5.左侧商品类别列表的实现_02.mp4 29.90M
| ├──6.替换SDK版本导入源码找到形参解决R文件找不到_01.mp4 21.24M
| ├──6.替换SDK版本导入源码找到形参解决R文件找不到_02.mp4 25.98M
| ├──6.替换SDK版本导入源码找到形参解决R文件找不到_03.mp4 28.87M
| ├──7.右侧所有商品列表的实现_01.mp4 21.86M
| ├──7.右侧所有商品列表的实现_02.mp4 51.90M
| ├──8.两侧列表的数据双向绑定_01.mp4 21.65M
| ├──8.两侧列表的数据双向绑定_02.mp4 21.01M
| ├──8.两侧列表的数据双向绑定_03.mp4 26.74M
| └──9.左侧列表点选效果_01.mp4 35.00M
├──82.Kotlin-黑马外卖第三天(二)
| ├──11.右侧列表滚动切换左侧类别_01.mp4 25.97M
| ├──11.右侧列表滚动切换左侧类别_02.mp4 38.30M
| ├──12.商品条目的赋值_01.mp4 20.87M
| ├──12.商品条目的赋值_02.mp4 44.94M
| ├──13.点击数量发生变化_01.mp4 33.41M
| ├──14.点击+号的动画_01.mp4 42.13M
| ├──15.减号按钮的处理_01.mp4 14.73M
| ├──16.红点功能的实现_01.mp4 46.61M
| ├──17.获取view的绝对位置方法_01.mp4 35.11M
| ├──18.抛物线动画实现_01.mp4 24.37M
| ├──18.抛物线动画实现_02.mp4 21.42M
| └──18.抛物线动画实现_03.mp4 36.39M
├──83.Kotlin-黑马外卖第四天
| ├──1.更新底部购物栏UI_01.mp4 42.71M
| ├──10.缓存保存的实现_01.mp4 55.18M
| ├──2.弹出购物车_01.mp4 30.89M
| ├──3.展示购物车_01.mp4 21.34M
| ├──3.展示购物车_02.mp4 41.49M
| ├──4.购物车+号处理_01.mp4 32.73M
| ├──5.购物车-号处理_01.mp4 24.51M
| ├──5.购物车-号处理_02.mp4 27.18M
| ├──6.清空购物车_01.mp4 17.44M
| ├──6.清空购物车_02.mp4 44.00M
| ├──7.使用dataclass创建点餐记录javabean_01.mp4 27.10M
| ├──8.点餐记录dao层实现_01.mp4 25.12M
| ├──9.缓存读取的实现_01.mp4 21.64M
| ├──9.缓存读取的实现_02.mp4 24.78M
| └──9.缓存读取的实现_03.mp4 29.00M
├──84.Kotlin-黑马外卖第四天(二)
| ├──11.清空缓存的实现_01.mp4 25.15M
| ├──12.跳转到确认地址页面_01.mp4 24.45M
| ├──12.跳转到确认地址页面_02.mp4 58.48M
| ├──13.地址列表与新增地址页面_01.mp4 26.24M
| ├──13.地址列表与新增地址页面_02.mp4 31.25M
| ├──14.新增地址页面控件处理_01.mp4 26.39M
| ├──14.新增地址页面控件处理_02.mp4 37.06M
| ├──15.地址bean的orm处理_01.mp4 44.28M
| ├──16.地址dao的封装_01.mp4 18.17M
| ├──16.地址dao的封装_02.mp4 21.30M
| ├──17.新增地址_01.mp4 26.37M
| ├──17.新增地址_02.mp4 37.05M
| ├──18.地址列表_01.mp4 23.43M
| ├──18.地址列表_02.mp4 27.58M
| ├──18.地址列表_03.mp4 39.95M
| ├──19.更新地址_01.mp4 26.10M
| ├──19.更新地址_02.mp4 30.55M
| ├──19.更新地址_03.mp4 35.94M
| └──20.删除地址_01.mp4 12.97M
├──85.kotlin-黑马外卖第五天
| ├──1.集成高德地图_01.mp4 35.28M
| ├──1.集成高德地图_02.mp4 40.82M
| ├──10.更新骑手位置_01.mp4 49.55M
| ├──2.生成高德地图key_01.mp4 36.81M
| ├──3.定位实现以及动态申请权限_01.mp4 29.98M
| ├──3.定位实现以及动态申请权限_02.mp4 49.19M
| ├──4.移动地图与周边搜索_01.mp4 25.67M
| ├──4.移动地图与周边搜索_02.mp4 28.74M
| ├──4.移动地图与周边搜索_03.mp4 33.26M
| ├──5.展示周边搜索结果_01.mp4 20.21M
| ├──5.展示周边搜索结果_02.mp4 33.57M
| ├──6.一键定位地址的实现_01.mp4 29.64M
| ├──7.订单详情页_01.mp4 29.05M
| ├──7.订单详情页_02.mp4 45.60M
| ├──8.订单详情页自动刷新_01.mp4 19.33M
| ├──9.标注买卖家位置_01.mp4 35.00M
| ├──9.标注买卖家位置_02.mp4 35.86M
| └──9.标注买卖家位置_03.mp4 23.81M
├──86.Kotlin-黑马外卖第五天(二)
| ├──11.动态更新骑手位置以及绘制轨迹_01.mp4 26.10M
| ├──11.动态更新骑手位置以及绘制轨迹_02.mp4 37.53M
| └──12.地图测距功能_01.mp4 21.31M
├──87.Kotlin前端实战开发
| ├──01.课程介绍_01.mp4 4.16M
| ├──02.创建项目与配置_01.mp4 19.75M
| ├──03.页面初始化_01.mp4 27.02M
| ├──04.canvas绘制线条_01.mp4 22.77M
| └──05.canvas绘制圆形_01.mp4 24.49M
├──88.Kotlin前端实战开发(二)
| ├──06.canvas填充和状态_01.mp4 26.89M
| ├──07.绘制时钟外边框_01.mp4 18.65M
| ├──08.绘制时钟60个小点_01.mp4 33.10M
| ├──09.绘制时钟12个小时_01.mp4 23.79M
| ├──09.绘制时钟12个小时_02.mp4 23.36M
| └──10.绘制时针线_01.mp4 24.70M
├──89.Kotlin前端实战开发(三)
| ├──11.绘制分针和秒针_01.mp4 14.98M
| ├──12.绘制时钟获取当前时间_01.mp4 26.76M
| └──13.绘制时钟优化_01.mp4 34.36M
├──9.类,对象和接口(二)
| ├──33_kotlin面向对象实战-洗衣机升级_01.mp4 13.99M
| ├──33_kotlin面向对象实战-洗衣机升级_02.mp4 18.95M
| ├──34_kotlin面向对象实战-封装_01.mp4 21.07M
| ├──36_kotlin抽象类和继承_01.mp4 9.32M
| ├──36_kotlin抽象类和继承_02.mp4 13.48M
| └──37_kotlin面向对象-多态_01.mp4 14.37M
└──资料
| ├──aa.gif 175.52kb
| ├──Android_V1.0.3.png 49.04kb
| ├──game-tank.zip 20.25M
| ├──gradle常见插件演示plugins.zip 73.44kb
| ├──gradle工程和任务projectandtask.zip 65.83kb
| ├──gradle任务集合tasks.zip 65.56kb
| ├──gradle自定义任务mytask.zip 72.09kb
| ├──HeimaPlayer.rar 111.67M
| ├──helloKotlin.zip 1.06M
| ├──IM.rar 50.36M
| ├──kotlin.rar 14.87M
| ├──kotlinc.zip 28.72M
| ├──kotlin课程大纲.pptx 196.81kb
| ├──Kotlin学习路线.png 234.00kb
| ├──pdf.zip 8.61M
| ├──pdf和ppt.zip 17.46M
| ├──Tank.zip 13.34M
| ├──成员引用.zip 1.79kb
| ├──非对称加密RSA-生成秘钥对.mp4 34.09M
| ├──加密解密代码.zip 81.76kb
| └──项目资料及源码.zip 526.32M
常见问题FAQ
- 视频课程的格式是什么
- 视频不加密,网盘在线学习,课程免费更新,持续更新
- 怎么发货?
- 有些资源没更新完结怎么办
- 有问题不懂想咨询怎么办