- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
iOS程序员面试分类模拟24
简答题
1.?id,NSObject,id<NSObject>的区别是什么?
正确答案:
NSObject修饰的对象肯定是NSObject对象,但id修饰的对象虽然肯定是Ob(江南博哥)jective-C对象,但不一定是NSObject对象,id类型是一种运行时的动态类型,编译器不会对其进行类型检查。id<NSObject>修饰的对象也是一种动态类型对象,对象的类型在运行时才确定,但编译器知道它一定是遵守NSObject协议的。例如:id<NSObject>常用来定义delegate对象。
??idfool;???????//是Objective-C对象,但不是NSObject对象
??NSObject*foo2;????//NSObject对象
??id<NSObject>foo3;??//不是NSObject对象,但是遵守NSObject协议
?
2.?CAAnimation的delegate是强引用还是弱引用?
正确答案:
CAAnimation的delegate(代理)是强引用,是内存管理中一个罕见的特例。为了避免循环引用问题,delegate通常都使用assign或weak修饰表示弱引用,而CAAnimation动画是异步的,如果动画的代理是弱应用而不是强应用,那么会导致其随时都可能被释放掉。在使用动画时要注意采取措施避免循环引用,例如及时在视图移除之前的合适时机移除动画。
??CAAnimation的代理定义如下,明确说明动画的代理在动画对象整个生命周期间是被强引用的,默认为nil。
??/*Thedelegateoftheanimation.Thisobjectisretainedforthe
??*lifetimeoftheanimationobject.Defaultstonil.Seebelowforthe
??*supposeddelegatemethods.*/
??@property(nullable,strong)id<CAAnimationDelegate>delegate;
?
3.?SDWebImage在iOS93DTouch下出现什么问题?
正确答案:
1)iOS9使用SDWebImage加载图片时,在SDWebImageDownloaderOperation.m文件内有操作可能会在后台线程中更新UI,可能导致意想不到的结果甚至程序崩溃。因此,在想更新UI时一定要保证将UI更新操作同步到主线程。UI更新同步到主线程有3种方法,推荐使用GCD来实现,代码形式如下:
??dispatch_async(dispatch_get_main_queue(),^{
??/*这里写更新UI操作*/
??/*写完UI更新操作要根据需要重新布局layout*/
??});
??2)iOS9考虑到HTTP的不安全性,系统要求所有的网络请求都使用HTTPS,因此之前的HTTP请求会失效报错,可以通过设置允许继续使用HTTP解决,具体在工程的info.plist配置文件中添加如图所示配置即可(添加AppTransportSecuritySettings配置字段在将其下的AllowArbitaryLoads的值改为YES)。
??
??配置info.plist字段
?
4.?SDWebImage是什么?加载图片的原理是什么?
正确答案:
SDWebImage是一个针对图片加载的插件库,提供了一个支持缓存的用于异步加载图片的下载工具,特别为常用的UI元素:UIImageView、UIButton和MKAnnotationView提供了类别扩展,可以作为一个很方便的工具。其中,SDWebImagePrefetcher可以预先下载图片,方便后续使用。
??SDWebImage的几点特性:
??1)为UIImageView、UIButton和MKAnnotationView进行了类别扩展,添加了Web图片和缓存管理。
??2)是一个异步图片下载器。
??3)异步的内存+硬盘二级缓冲以及自动的缓冲过期处理。
??4)后台图片解压缩功能。
??5)可以保证相同的URL(图片的检索key)不会被重复多次下载。
??6)可以保证假的无效URL不会不断尝试去加载。
??7)保证主线程不会被阻塞。
??8)性能高。
??9)使用GCD和ARC。
??支持的图片格式:
??1)UIImage支持的图片格式有JPEG、PNG等,包括GIF都可以被支持。
??2)Web图片格式,包括动态的Web图片(使用WebPsubspec)。
??使用
您可能关注的文档
- Go程序员面试分类模拟题14.docx
- Go程序员面试分类模拟题15.docx
- Go程序员面试分类模拟题16.docx
- Go程序员面试分类模拟题17.docx
- Go程序员面试分类模拟题18.docx
- Go程序员面试分类模拟题19.docx
- Go程序员面试分类模拟题20.docx
- Go程序员面试分类模拟题21.docx
- Go程序员面试分类模拟题22.docx
- Go程序员面试分类模拟题23.docx
- 2025青海西宁市行政执法机构招聘29人笔试备考试题含答案详解(a卷).docx
- 2025青海西宁市行政执法机构招聘29人笔试备考试题含答案详解ab卷.docx
- 2025青海西宁市行政执法机构招聘29人笔试备考试题含答案详解.docx
- 2025青海西宁市行政执法机构招聘29人笔试备考试题及答案详解(考点梳理).docx
- 2025青海西宁市行政执法机构招聘29人笔试备考试题及答案详解(网校专用).docx
- 2025青海西宁市行政执法机构招聘29人笔试备考试题及答案详解(精选题).docx
- 2025青海西宁市行政执法机构招聘29人笔试备考试题及答案详解(有一套).docx
- 纪念中国人民抗日战争暨世界反法西斯战争胜利80周年阅兵式.pptx
- 小学生描写动物作文指导.ppt
- 2025青海西宁市行政执法机构招聘29人笔试备考试题及答案详解(最新).docx
文档评论(0)