240 发简信
IP属地:广东
  • 120
    iOS触摸事件全家桶

    好奇触摸事件是如何从屏幕转移到APP内的?困惑于Cell怎么突然不能点击了?纠结于如何实现这个奇葩响应需求?亦或是已经被响应链、手势、target-action这一系列响应触...

  • 你的 “接收到 VSync 信号后的屏幕绘制” 这一部分有点问题吧。如果VSync信号一分钟触发60次,并且可以唤醒runloop的话,为什么当我我应用不动的时候,很久runloop才会唤醒一次呢?

    runloop与Vsync 信号

    在多数博客中提到的runloop 在即将休眠前的屏幕绘制和接收到VSync 信号后的屏幕绘制,它们之间是什么关系呢? 这个问题困扰了我很长时间,现在做一个简单总结。 runl...

  • 用kdebug_signpost加CADisplayLink打点跑了下instrument发现,好像监听runloop来优化的方法感觉并没有多少优化,两帧刷新之间的时间仍然有很多四五十毫秒往上的,不过几百毫秒级的卡顿确实少了一些

    RunLoop解决卡顿问题

    人生就像RunLoop,不断的循环、不断的往复。当线程被杀掉,当生命结束,RunLoop就消失了,人生也就结束了。在有限的生命里,为何不让自己像RunLoop一样优雅的活着,...

  • 不是

    iOS addChildViewController方法

    APP中经常有根据标签来切换页面的需求,如果切换的页面只是刷新一下数据也就罢了,但是如果每个标签切换页面的数据和内容、结构完全不同你会怎么样做?(例如:图1-1) 个人觉得理...

  • 2019 iOS 面试题大全(补充完整版)

    原文地址:2018 iOS 面试题大全由于原作者并没有继续更新,这里我转过来继续更新下 整理的一些iOS面试相关问题,持续更新,敬请关注 2018 iOS面试题大全---全方...

  • ios面试题记录学习(补充抄录)

    原文地址:2018 iOS 面试题大全 整理的一些iOS面试相关问题,持续更新,敬请关注 2018 iOS面试题大全---全方面剖析面试1、2018 iOS面试题---UI相...

  • 问题: 如果一个用户的浏览器访问一个网页获取的css, js, 图片什么的都在同一台服务器上, 那用同一个tcp不是变成串行了吗?

  • 更确切的应该是同一个进程,IP加端口号

    http的长连接和短连接(史上最通俗!)

    1.以前的误解 很久之前就听说过长连接的说法,而且还知道HTTP1.0协议不支持长连接,从HTTP1.1协议以后,连接默认都是长连接。但终究觉得对于长连接一直懵懵懂懂的,有种...

  • didStartProvisionalNavigation 应该是开始请求时 调用吧,而不是页面开始加载,开始加载是说页面数据拉取完了准备加载在屏幕上了

    WKWebView详解

    WKWebView是在Apple的WWDC 2014随iOS 8和OS X 10.10出来的,是为了解决UIWebView加载速度慢、占用内存大的问题。使用UIWebView...

  • 你的例子里:CustomBlock block = ^(NSString *name){...},实现明明需要传递参数,为什么你的SEL和Type写的是无参数的

    深入探究SEL,Method,IMP

    SEL SEL方法选择器,表示一个selector的指针 无论什么类里,只要方法名相同,SEL就相同。项目里的所有SEL都保存在一个NSSet集合里(NSSet集合里的元素不...

  • 在IMP部分你有这个代码:id objc = imp(id,SEL,argument),但实际上调用imp直接imp()就可以了,不用写id和SEl参数进去

    深入探究SEL,Method,IMP

    SEL SEL方法选择器,表示一个selector的指针 无论什么类里,只要方法名相同,SEL就相同。项目里的所有SEL都保存在一个NSSet集合里(NSSet集合里的元素不...

  • 补充一下,RootClass的superClass指针指向nil

    object_getClass(obj)与[obj class]的区别

    导语 今天在StackOverFlow上面看到一个提问:object_getClass(obj) and [obj class] give different results...

  • 你这static const void *myMsgSend(id receiver, const char *name)玩意儿搞了个四不像吧,你是定义了个c的函数指针?那你应该myMsgSend = &函数;你这样写是想定义函数吧,那加*做什么

    Objective-C 之 objc_msgSend 简单实现

    objc_msgSend 函数 在 Objective-C 中, message 是直到 runtime 的时候才会绑定实现,编译器会将我们的发送消息 [receiver m...

  • @谢谢生活 你可以去看下dispatch_once的原理和使用,本身dispatch_once就是防止多线程同时访问资源的,它和@synchronize的作用是一样的

    iOS中NSCache缓存机制

    应用场景: iOS中需要频繁读取的数据,都可以用NSCache把数据缓存到内存中提高读取性能。 正文: 一:定义 NSCache是系统提供的一种类似于集合(NSMutable...

  • 还有getInfoModel的时候你写的是有nscache就返回,万一nscache被清空了不就返回nil了?

    iOS中NSCache缓存机制

    应用场景: iOS中需要频繁读取的数据,都可以用NSCache把数据缓存到内存中提高读取性能。 正文: 一:定义 NSCache是系统提供的一种类似于集合(NSMutable...

  • 有点疑问:创建单例的时候,dispatch_once里为什么还要加@synchronize

    iOS中NSCache缓存机制

    应用场景: iOS中需要频繁读取的数据,都可以用NSCache把数据缓存到内存中提高读取性能。 正文: 一:定义 NSCache是系统提供的一种类似于集合(NSMutable...