几行简单的代码 定义一个协议KLineViewDataSource,然后在KLineView类里使用,防止循环引用,加上weak。但是会报错 'weak' must not ...
平时我们说的库(library)是对库(library)和框架(framework)的通称。我们说swift库,指的是swift动态框架(Swift dynamic fram...
定义一个protocol,叫protocolB,让BViewController实现。 protocolB里面可以定义BViewController创建时需要的参数,例如这里...
题外话:路过的大牛,请回答我的一个疑问,通过一个字符串映射出具体类来避免直接import具体类,这种算不算真的解耦? 假设AVC和BVC都是UIViewController。...
URLNavigator是Swift版本的Router。 Router的主要作用是解耦。之前在各个ViewController间跳转,需要import ViewControl...
在我们项目中,经常用到自定义UIive控件,一般我们都会选择XIB进行布局,那么swift重如何从XIB加载UIView控件呢?一般情况下,我们都会这样来写. 但是随着XIB...
结论: 所谓的注册不注册其实指:【有没有为某一identifier 注册一个Class】或者理解为:有没有把一个identifier和一个Class相互绑定。如果发生绑定,当...
编译后的代码都是二进制,不会从oc编译成c。你还停留在会用的阶段,还需要对编译这块深入理解。
Runtime- 结合Demo, 让你轻松搞定关于Runtime的学习资料网上有很多了,但是大部分看起来有些晦涩难懂,看过一遍后让人感觉有些走马观花, 还是理解不透Runtime.所以趁着这几天的空闲时间, 我对自己理解...
首先,代码要运行肯定也必须要经过编译转换为机器语言才能执行,所以OC代码最终执行的当然也是0和1表示的机器码。另外,我们一般认为OC代码会先转化为C/C++代码,然后再执行。...
原创文章转载请注明出处,谢谢 很早就想讲关于NSObject这个对象的模型,其实网上有不少讲这方面知识的,但是我感觉很多都是千遍一律,而且有一些结论的并没有系统的论证,所以我...
每次听到“动态语言”就会思考一次这个问题,OC为什么是动态语言?不同时期有不s同的理解。 最开始的理解是,在运行时才去调用特定的方法(OC的消息转发机制属于动态性,并不是多态...
写在前面:应用场景很重要 如果你的公司有这样一个硬性的需求:用户将APP退出到后台的时候,当该用户收到推送的时候,不让用户感觉到推送过来了,不想打扰用户,但是还想拿到推送内容...
PublishSubject既是一个观察者,也是一个被观察者,通常用来代替delegate。如下需求: 思路很简单,点击cell里删除按钮,用PublishSubject将删...
我对RxSwift很失望 最近的一个项目使用RxSwift开发,的确遇到不少问题。其中一些是RxSwift本身的问题,无法解决,只能忍受或者采取其他方式。现在给我总体的感觉是...
首先通过一段代码来描述内存对齐的现象。 上述代码打印出来的结果为:12,8 为什么相同的结构体,只是交换了变量 ab 和 cd 在结构体中的顺序他们的大小就改变了呢?这就是“...