首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS
订阅
丶RunsSwifter
更多收藏集
微信扫码分享
微信
新浪微博
QQ
31篇文章 · 0订阅
iOS 上的 FlexBox 布局
最近时不时的听到关于 FlexBox 的声音,除了在 Weex 以及 React Native 两个著名的跨平台项目里有用到 FlexBox 外,AsyncDisplayKit 也同样引入了 FlexBox 。 Frame,直接设置横纵坐标,并指定宽高。 Auto Layout…
深入剖析 iOS 性能优化
在集合里数据量小的情况下时间复杂度对于性能的影响看起来微乎其微。但如果某个开发的功能是一个公共功能,无法预料调用者传入数据的量时,这个复杂度的优化显得非常重要了。 上图列出了各种情况的时间复杂度,比如高效的排序算法一般都是 O(n log n)。接下来看看下图: 图中可以看出 …
iOS常见宏理解以及使用(更新ing)
然后在.h文件中加上以下声明, 就可以在导入该.h文件的类中访问该常量。 如果要在未导入该.h文件的类中访问这两个常量, 则应该将上面的代码放入该类的.m文件中。 UIKIT_EXTERN相比extern只是增加了兼容性,使用方法一样。 使用FOUNDATION_EXPORT声…
实用的可选项(Optional)扩展
可选值(Optional)是 Swift 语言最基础的内容。我想每个人都同意它带来了巨大的福音,因为它迫使开发者妥善处理边缘情况。可选值的语言特性能让发者在开发阶段发现并处理整个类别的 bug。 然而,Swift 标准库中可选值的 API 相当的有限。如果忽略 customMi…
质量监控-卡顿检测
不管是应用秒变幻灯片,还是启动过久被杀,基本都是开发者必经的体验。就像没人希望堵车一样,卡顿永远是不受用户欢迎的,所以如何发现卡顿是开发者需要直面的难题。虽然导致卡顿的原因有很多,但卡顿的表现总是大同小异。如果把卡顿当做病症看待,两者分别对应所谓的本与标。要检测卡顿,无论是标或…
iPhone查找序列号生成函数
在iOS7之前我们可以通过- (NSString *)uniqueIdentifier这个方法获取iPhone的唯一标识符,也叫作UDID。不过自从iOS7苹果就把这个方法给禁了,此时我们想要获取iPhone的唯一标识符就很困难。 这两种模式都有个弊端,用户重置手机或者刷机唯一…
手绘图解:一次点击事件的面试题(基于RunLoop)
结合RunLoop和实际堆栈信息解释点击事件的传播(与99%的人认为的过程不同)。最终结果在最后的堆栈信息图和手绘的事件完整传递图中。 像我这种小白开发一般都是从事件的传递来讲的:就是UIApplication找寻最优响应者的过程(这里就不赘述了)。 IOKit负责响应硬件事件…
iOS在Assets.xcassets中提供的便捷功能
我们在进行应用程序开发过程中, 常常会在项目中放置大量的图片素材, 且每一张图片都需要准备@1x、@2x和@3x三种以便在不同的设备中使用. 并且最可怕的是现在iOS设备的PPI有逐年增大的趋势, 未来很可能会有@4x和@5x等等, 这对设计人员和开发人员维护图片素材都带来了不…
NFDownloadButton:实用的下载进程按钮(完成后显示下载设备图标)组件
NFDownloadButton:实用的下载进程按钮(完成后显示下载设备图标)组件。
OCEval-动态执行ObjectiveC的热修复方案
目前流行的 JSPatch/RN 基于JavaScriptCore提供了iOS的热修复和动态化方案。但是都必须通过下发Javascript脚本来调用Objective-C。 尤其是JSPatch,编写大量的JS代码来调用OC的方法,开发效率较低(目前可以借助语法转换器),运行效…