下载APP
登录
关闭
讲堂
算法训练营
Python 进阶训练营
企业服务
极客商城
客户端下载
兑换中心
渠道合作
推荐作者
当前播放: 55 | 开源图片框架接触的架构和使用
00:00 / 00:00
标清
  • 标清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看

从0开发一款iOS App

共106讲 · 106课时,约1000分钟
2089
免费
01 | 课程介绍
免费
02 | 内容综述
免费
03 | 常见App类型及技术栈浅析
免费
04 | 使用Xcode创建第一个工程
免费
05 | MVC模式:iOS中的架构基石
免费
06 | iOS中的视图UIView
07 | 了解UIView的生命周期
08 | 视图的控制器UIViewContro...
09 | 结合视图和控制器构建Tabb...
10 | 使用Navigation构建App的...
11 | iOS基本页面框架的构成和...
12 | 系统函数中常见模式Delega...
13 | UITableView简介
14 | UITableView中Delegate和D...
15 | UITableViewCell的复用及...
16 | 结合子视图实现完整的列表...
17 | UICollectionView的基本应...
18 | UICollectionViewLayout...
19 | 基本列表视图的选择和使用
20 | 滚动视图的基类UIScrollVi...
21 | 应用UIScrollViewDelegate...
22 | iOS中滚动视图对比及App内...
23 | iOS中文字的展示:UILabel...
24 | iOS中图片的展示:UIImage...
25 | iOS中按钮的实现:UIButto...
26 | UIControl以及Target-Act...
27 | 使用UIGestureRecognizer...
28 | 通过UIAlertView了解UIKit...
29 | Web基础知识及WKWebView ...
30 | 使用WKWebView及Delgate实...
31 | 认识观察者模式KVO并展示...
32 | iOS开发中的Web应用浅析
33 | 使用UIView动画完善界面的...
34 | 动画背后的CALayer基本应...
35 | CoreAnimation及开源动画...
36 | 常用代码规范和重构方式
37 | 结合UIKit分析常用App的页...
38 | 网络基础及请求的封装
39 | NSURLSession基础原理、组...
40 | 使用系统网络架构NSURLSes...
41 | 常用框架集成方式Submodul...
42 | 集成和使用开源网络框架
43 | iOS中的JSON解析
44 | 使用结构化的数据进行解析...
45 | 实现列表数据加载、解析和...
46 | iOS沙盒机制和文件结构
47 | 使用NSFileManager操作和...
48 | iOS中的序列化NSCoding
49 | 开源存储方案对比与分析
50 | 缓存新闻列表数据及已读状...
51 | iOS中线程的基础知识及NST...
52 | GCD的常用方法分析和使用
53 | 了解Operation、Runloop以...
54 | 如何管理App中的图片下载...
55 | 开源图片框架接触的架构和...
56 | 了解iOS系统的音视频框架
57 | 重构视频列表展示视频
58 | 实现简单视频播放器AVPla...
59 | iOS消息机制NSNotificatio...
60 | 使用Notification接收和处...
61 | 使用KVO监听和处理播放资...
62 | CMTime及播放缓冲进度的获...
63 | 使用单例模式重构播放器业...
64 | 常用App视频业务及流程浅...
65 | AutoLayout简介
66 | 使用AutoLayout实现通用T...
67 | iOS常用布局方式选择
68 | 逻辑分辨率适配
69 | 物理分辨率适配
70 | 使用ImageAsset管理图片资...
71 | iPhone X适配
72 | iOS开发适配常用方法总结
73 | App启动过程及生命周期分...
74 | 通过App生命周期回调实现...
75 | 使用URL Scheme进行App间...
76 | Universal Link简介
77 | 常用组件化Target-Action...
78 | 常用组件化URL Scheme方...
79 | 常用组件化Protocol-Clas...
80 | 实现简单的第三方登录和分...
81 | iOS中静态库的制作和使用
82 | iOS当中Framework的制作和...
83 | OAuth和OpenID原理和使用
84 | 集成QQ SDK实现登录和分...
85 | iOS中常用日志和上报系统...
86 | 类CocoaLumberjack日志框...
87 | Crash的类型介绍和常用收...
88 | 常用上报技术方案对比和分...
89 | iOS中定位和定位权限
90 | 定位功能实现和位置信息的...
91 | iOS中推送和推送权限
92 | 使用UserNotifications实...
93 | 远程推送与APNs简介
94 | 使用UserNotifications接...
95 | iOS图标管理和动态更新
96 | iOS App Extension简介
97 | 实现Today Extension以...
98 | UITextField和UITextView
99 | 使用UITextField实现搜索...
100 | 使用UITextView实现输入...
101 | 复杂列表页实现方案及IGL...
102 | 复杂内容页展示逻辑及实...
103 | App的签名原理和证书申请
104 | 常用iOS唯一标识符
105 | App的打包和上架流程
106 | 课程总结和结束语
本节摘要

精选留言(7)

  • 2019-09-01
    老师我按照您的代码运行后,cacheType的状态从SDImageCacheTypeNone到SDImageCacheTypeDisk之后就一直是Disk,没有显示过Memory,这样正常吗?

    作者回复: 是每次都是重新编译然后断点看的么? 如果是重新编译了Memory就被清空了。试试在类似TableView滚动过程这个场景看下,默认没有特殊设置的话,SD是会优先取Memory,没有之后在取Disk的

    1
  • 2019-06-27
    老师,支持你。作为多年开发,来回顾。也能学到很多思考,分析方法。
    1
  • 2019-11-18
    在cd project 时,出现no such file or directory. 是什么问题?网上查好久没解决。

    作者回复: clone成功了没? 看下clone之后文件夹里有什么,是不是和git上的相同。同时要看下是否当前路径在clone之后的文件夹内,执行pwd看下当前路径。

  • 2019-07-12
    LRC缓存淘汰算法是一个比较常见的算法. 简单的可以用链表实现, 把最近用到的数据都插到链头, 容量到达阀值的时候删除链尾节点. 还可以结合散列表, 把最近使用过的缓存元素的指针放入散列表中, 加快访问缓存的速度.
  • 2019-07-06
    老师,如果缓存到内存中, 第二次刷新到时候,假如这时候服务器有一张图片更换了, 但是服务器返回的链接没换, sdwebimage会去更新这张图片, 这块的逻辑有点没明白?它刷新的时候根据链接更换了去从新请求数据吗?

    作者回复: cache的存储简单的来说是根据url作为key的,当然我们可以在这个key上自定义任何的字段。所以如果不进行特殊处理的话,url链接没换,如果命中了cache,图片是不会进行重新请求的。所以想要更新图片一般的简单办法就是更换图片url。

    1
  • 2019-06-30
    你好,我上传了。我是用的#import "UIImageView+WebCache.h",老师你项目是直接导入SDWebImage.h,我没有找到这个文件。

    https://github.com/JustFshun/22.SampleApp-SDWebImage-

    作者回复: 我看了下你的项目,目前项目中使用的SD是4.4.6 这个版本没有SDWebImage.h,执行下pod update 会更新到最新的5.0.6 就有这个头文件了。但是不管引入那个头文件其实都可以,尤其对于简单的使用,其实引入独立的头文件更为合适,减少不必要的代码。

    1
  • 2019-06-27
    老师你好,请问我pod好SDWebImage框架后,没有发现SDWebImage.h文件。是框架版本原因吗?如何解决

    作者回复: 能上传下代码发下URL么 我看下