240 发简信
IP属地:北京
  • iOS中objc_setAssociatedObject关联对象自动置空

    前言 有经验的iOS开发者都知道,ARC中的weak关键字可以在对象销毁时 指针自动置成nil,在OC中向nil发消息是安全的,所以不会造成野指...

  • 使用Cocoapods创建私有组件库

    前言 目前公司有多个app项目,其中多个项目之间有很多模块是共用的,区别只是参数或几个配置的不同。比如网络层工具、三方分享登录、常用catego...

  • iOS 自定义KVO

    自己实现kvo之前,需要知道iOS系统对kvo的实现。 系统实现kvo的原理 这依赖了OC强大的runtime特性。在我们对某个Student的...

  • iOS 使用Runtime&KVC简化归档解档

    前言 在iOS项目中,用户信息等不大不小的数据我们一般会归档到沙盒文件中,但当需要归档的属性较多时,或后续添加、减少属性时,都要操作encode...

    0.1 383 0 5 1
  • RunLoop

    RunLoop是什么 RunLoop是OC的一种循环机制,为了保证线程执行完一次任务后不退出,并且可以随时接收用户和系统事件,可以说 它就是一种...

  • iOS 高度自适应的textView输入框

    背景 以前项目中发表评论的功能一直用的是固定高度的UITextView,用户通过上下滚动来查看输入的内容,体验并不好。最近在优化使用体验,自己封...

  • iOS为自定义类打印详细信息

    在开发中,我们要建很多模型类来存储格式化数据,但是在输出log的时候,只能打印出类名和内存地址。不会像系统的NSArray或NSDictiona...

  • iOS 给UIAlertView添加block回调

    在iOS开发中,经常用到警告视图与用户交互,虽然在iOS8.0以后推荐使用UIAlertController了,但是对于兼容iOS7.x的项目,...

  • iOS项目中runtime实现支持某个页面横竖屏切换

    前言 在项目中,尤其是带视频播放的项目,经常需要视频播放页面横竖屏切换。 常规实现方式的弊端 提到支持横竖屏,大家可能会想到在xcode项目配置...