iOS开发
彭先僧
这个作者很懒,什么都没留下…
展开
-
iOS开发:浅谈内存管理
内存分布堆:一般由程序员分配释放,若程序员不释放,则可能会引起内存泄漏。其类似于链表。栈:由编译器自动分配释放,存放函数的参数值,局部变量等值。其操作方式类似于数据结构中的栈。内存管理原理OC语言使用引用计数来管理内存,每个对象都有一个可以递增和递减的计数器。如果有其他对象持用该对象的话,那该对象就递增其引用计数;用完以后就递减其计数,当引用计数为0时,就销毁该对象。MRC与ARC...原创 2019-06-21 22:38:36 · 196 阅读 · 0 评论 -
iOS开发:浅谈控件圆角的处理方式
备受唾弃的图片圆角处理方式图片圆角最常见的处理方式如下 self.imageView.layer.masksToBounds = YES; self.imageView.layer.cornerRadius = 15;操作起来方便简洁,也是小编之前常用的处理方式,但是作为消耗性能的小怪兽,当数据量比较大的时候对性能的消耗还是十分大的,所以我们今天来尝试一下其他的解决方案。...原创 2019-06-21 22:40:04 · 125 阅读 · 0 评论 -
iOS开发:浅谈响应链与事件传递
基本概念响应者:在iOS中,响应者为能响应事件的UIResponder子类对象,如UIButton、UIView等。响应链:响应链是由链接在一起的响应者(UIResponse子类)组成的。默认情况下,响应链是由第一响应者,到application对象以及中间所有响应者一起组成的。事件传递:获得响应链后,将事件由第一响应者往application传递的过程即为事件传递。响应者链执行的...原创 2019-07-21 22:04:31 · 188 阅读 · 0 评论 -
iOS开发:浅谈贝塞尔曲线
贝塞尔曲线贝塞尔曲线(Bézier curve),又称贝兹曲线或贝济埃曲线,是应用于二维图形应用程序的数学曲线。贝塞尔曲线是依据四个位置任意的点坐标绘制出的一条光滑曲线。具体原理可以看看文章底部第一篇参考文章。UIBezierPath简介在iOS开发中,贝塞尔曲线的具体实现封装在Core Graphics框架中。为了方便开发者使用,苹果单独将贝塞尔相关方法封装到了UIBezierPath类中...原创 2019-07-21 22:05:26 · 555 阅读 · 0 评论 -
iOS开发:浅谈子线程中添加定时器
##目标开启一个子线程,并添加一个定时器,在进入界面时启动定时器,在退出界面时销毁定时器。##demo地址https://github.com/pengwj/blogWork/tree/master/code/TimerTest##注意点1、定时器默认添加在NSDefaultRunLoopMode,界面滑动时会导致定时器停止执行。2、子线程中RunLoop默认不启动,所以需要往里面添加...原创 2019-07-21 22:06:01 · 911 阅读 · 0 评论 -
iOS开发:初探ReactiveCocoa
前言上次接触ReactiveCocoa已经是三年前的事情了,最近公司开新项目了,我选择了MVVM+ReactiveCocoa架构,但是开始撸代码时发现RAC的接口好像变化很大,就再此学习一下。框架引入框架介绍为了适应Objective-C、swift,ReactiveCocoa将代码拆分为四个库:ReactiveCocoa(集中于UI)、ReactiveSwift(swift版)、Re...原创 2019-07-21 22:06:40 · 141 阅读 · 0 评论 -
iOS开发:ReactiveCocoa+MVVM(UITableView)实战
前言上一篇文章中,笔者简单的阅读了ReactiveCocoa官方文档,了解了ReactiveCocoa的基本使用后。这篇文章主要探讨一下,如何基于MVVM的设计模式在含有UITableView界面中使用RAC绑定数据。MVVMMVVM本质上是基于MVC的一个改进版,它是在传统MVC模式上添加了一个ViewModel。ViewModel可以取出 Model 的数据同时帮忙处理 View 中由于...原创 2019-07-21 22:07:29 · 887 阅读 · 0 评论