首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
欧阳大哥2013
掘友等级
美团
坚持原创 以造轮子为乐。 Adhere to the original To build the wheels。
获得徽章 5
动态
文章
专栏
沸点
收藏集
关注
作品
赞
90
文章 50
沸点 40
赞
90
返回
|
搜索文章
最新
热门
动态规划的数学本质以及通用解法
很多算法或者面试题中都会涉及到:动态规划 的问题。 动态规划从数学的角度来看就是一个集合遍历的问题。本文将从通用算法的角度来实现动态规划。
iOS疑难Crash的寄存器赋值追踪排查技术
我们会借助一些崩溃日志收集库来定位和排查线上的崩溃信息,但是有些崩溃堆栈所提供的信息有限又不是必现崩溃,很难直观排查出问题的所在。这里我给大家分享一个采用寄存器赋值追踪的技术来排查和分析崩溃日志的技巧。话不多说先看案例: 从上面的崩溃信息大概可以看出这是一个GCD队列线程调用时…
iOS文本尺寸自适应异步计算实现
目前市面上的非UI线程文本算高方法或多或少都有一些问题。本文通过逆向和分析UILabel的sizeThatFits方法实现来得到一个最佳的文本算高的精简方法。方法可以运行在任意线程,因此可以有效的应用在那些异步算高或者要求尺寸进行提前计算的场景中。 从iOS官方的实现中可以看出…
iOS中编写高效能结构体的7个要点
结构体是C/C++两种语言中的基础语法, C语言中的结构体只是一个存粹的数据集合类型的描述,它只有数据成员而没有成员方法。C++中的结构体则被赋予为一个类定义的角色,它可以有数据成员也可以有成员方法。OC语言源自于C语言,它是面向对象的C语言,自然结构体的概念就和C语言中的定义…
静态拦截iOS对象方法调用的简易实现
最近出现了几篇关于二进制重排启动优化的文章。所有方案中都需要事先统计所有的函数调用情况,并根据函数调用的频次来进行代码的重排。 这些函数调用中,OC对象的方法调用最多。统计OC对象的方法调用可以在运行时通过第三方库比如fishhook来Hook所有objc_msgSend调用来…
开源UI界面布局框架MyLayout1.9发布
MyLayout是一套功能全面的iOS开源UI界面布局框架。它囊括了前端所有流行的界面布局技术和解决方案,同时具有如下七大特点: 功能强大。它可以减少我们在开发UI界面时所花费的时间以及减少需要适配多种设备而所消耗的时间。实践表明使用MyLayout进行界面布局时可以减少几乎5…
一种查看Block中引用的所有外部对象的实现方法
在项目工程中打开Edit Scheme... 在出现的如下界面: 中勾选Malloc Stack。 这样在Debug Memory Graph中就可以看到对象的内存分配调用栈信息,以及某个block的实现函数代码了。 在lldb控制台中使用 po [xxx debugDescr…
iOS调试Block引用对象无法被释放的一个小技巧
Block技术在iOS开发中非常流行也很方便,但是稍微疏忽就可能会产生引用无法被释放的问题,从而造成内存泄漏。那如何知道哪个Block持有了对象并造成内存泄漏呢? 一个解决的方法是在程序运行时通过Xcode的Debug Memory Graph 来查看当前进程中所有生命周期内的…
UILabel显示定时器文本的跳动问题解决方案
上面的gif图会发现在显示验证码计数时出现跳动和闪烁的问题。目前大多数用来实现定时器显示的控件都是UILabel。 在iOS9以前系统默认的英文字体是Helvetica, 这种字体每个数字的宽度都是相等的。而在iOS9以后默认的英文字体变为San Fransico字体,这种字体…
Swift5.0 的 Runtime 机制浅析
Objective-C语言是一门以C语言为基础的面向对象编程语言,其提供的运行时(Runtime)机制使得它也可以被认为是一种动态语言。运行时的特征之一就是对象方法的调用是在程序运行时才被确定和执行的。系统提供的开放接口使得我们可以在程序运行的时候执行方法替换以便实现一些诸如系…
下一页
个人成就
优秀创作者
文章被点赞
2,090
文章被阅读
253,516
掘力值
7,705
关注了
1
关注者
10,446
收藏集
1
关注标签
4
加入于
2017-06-13