为什么要引入Lifecycle? 我们在处理Activity或者Fragment组件的生命周期相关时,会遇到一些问题:比如Activity#onCreate()中初始化某些成...
每个月你要花多少? 财务自由是一种你不需要为了满足生活而必须去工作的状态,这种状态我们需要有多少金钱来支撑呢?接下来我们就来解答这个问题。 首先,计算一下我们一个月的花费是多...
DispatchSemaphore 信号量,一种用来控制并发访问资源的机制,多用于多线程中,可以控制并发线程数量。 例子 第一个例子 运行结果:运行一定时间后,程序crash...
多行文本高度的计算在开发过程中经常会用到,一般都是使用boundingRect(with:options:attributes:)方法来计算高度。 size: label的s...
@聆心倾听 是的,可以添加依赖库,以前不知道这个
把自己的库上传到cocoapods最新步骤详解最近公司要把我们的产品活动盒子上传到cocoapods,遇到了一些新坑,所以决定自己重新总结一下,做一下详细的记录。 1. 步骤总结 把库上传到github 创建podspe...
我在 Facebook 有一位好友。他本科国内 Top 2 大学毕业,在美国拿了最顶尖大学的硕士学位,然后年纪轻轻就做到了技术负责人,拿着超高的薪水。就是这么一个开了挂一般的...
@MinorUncle 箭头好像歪了一下,本意是想说feature1分支合并后不能再在feature1上面改了再合并到develop
细说git flow,满满的干货!Git的优点 分布式,本地包含远程仓库所有源码,可以离线操作 便捷的分支功能,可以很方便的进行团队合作和版本控制 Git flow Git flow 是前人经过探索总结出来的...
LJTool LJTool简介 在开发过程中,有一些常用扩展每次都会用到,每次拷贝来拷贝去,有点烦了,就封装成了一个工具库,使用pod来管理,方便多了。LJTool主要分成三...
一、crash log的获取 当你的app 在手机上crash的时候,会在手机上自动生成一个崩溃日志,也就是我们说的Crash Log。CrashLog的位置位于:iPhon...
前言 翻译已与 raywenderlich 社区取得联系(可翻译10篇文章),原文链接 是否想过把参与过的多个项目中功能相近的代码拆分成可复用的模块,是否想过与其他开发者分享...
Drive适合不会发送错误信号的,要处理错误还是要用Observable
RxSwift-Observable asDriver后的事件订阅关系实验 创建一个Observable信号,发送next和error信号 转换成Driver并订阅 发送next和completed信号,查看输出 只发送 next信号 结论 我...
实验 创建一个Observable信号,发送next和error信号 转换成Driver并订阅 发送next和completed信号,查看输出 只发送 next信号 结论 我...
前言 runtime的资料网上有很多了,部分有些晦涩难懂,我通过自己的学习方法总结一遍,主要讲一些常用的方法功能,以实用为主,我觉得用到印象才是最深刻的,并且最后两个demo...