240 发简信
IP属地:江苏
  • Ivar与objc_property_t区别

    Ivar包含了objc_property_t; 声明“xxx”的objc_property_t属性之后,编译器会自动生成相对应的以“_xxx”为...

  • Resize,w 360,h 240
    runtime方法交换原理

    method_exchangeImplementations(Method m1,Method m2) { if(!m1 || !m2)re...

  • notification的方法响应线程是发送notification的线程

    notification的方法响应线程取决于发送notification的线程。在子线程发送通知,响应方法的线程就是子线程,跟监听通知的线程没有关系

  • load和initialize方法执行时机

    1. 当程序启动的时候会执行load方法,当类第一次执行方法(类方法和实例方法)时会调用initialize方法,eg:在load里进行方法替换...

  • Resize,w 360,h 240
    insertSections: withRowAnimation:和reloadData遇到的坑

    一般展示数据的页面都有一个上拉加载更多的功能,当请求下来的数据添加到数据源之后,我们需要进行刷新界面,这时如果使用reloadData会比较消耗...

  • git bug分支与开发分支的管理

    当我们已经上线了一个稳定的版本,代码在master主干上面,后续我们要开发新的功能会创建一个Dev的分支,在这个分支上进行新功能的开发,我们还要...

  • 修改.gitignore后不生效

    当我们在git上初始化项目时,都会忽略一些不必要的文件,比如pods库。在开发过程中可能我们创建了自己的私有库,或者修改了三方库,这时我们需要自...

  • GCD信号量的使用

    dispatch_semaphore_t可以阻塞线程 dispatch_semaphore_t的使用场景:有三个界面A、B、C,A界面上有一个按...