摘要:iOS-CALayer中position与anchorPoint详解 属性介绍 CALayer通过四个属性来确定大小和位置, 分别为:frame、bounds、position、anchorPoint。 anchorPoint anchorPoint点(锚点)的值是用相对bounds的比例值来确定的
阅读全文
摘要:UIView表示屏幕上的一块矩形区域,它在App中占有绝对重要的地位,因为IOS中几乎所有可视化控件都是UIView的子类。负责渲染区域的内容,并且响应该区域内发生的触摸事件 UIView的功能 1.管理矩形区域里的内容2.处理矩形区域中的事件3.子视图的管理 4.还能实现动画 UIView的子类也
阅读全文
摘要:事件处理方法 UIResponder中定义了一系列对事件的处理方法,他们分别是: –(void)touchesBegan:(NSSet )touches withEvent:(UIEvent )event –(void)touchesMoved:(NSSet )touches withEvent:(
阅读全文
摘要:2017.6.27练习Demo 从登录动画说起 很长一段时间以来,我都在基于CALayer层进行动画实现,却忽略了UIKit提供给我们的动画接口。这些接口函数足够的强大并且十分的灵活,足以满足我们开发中大部分的动画需求。 在我们了解这些强大的接口前,我们先来看看第一个效果:在用户打开app要进行登录
阅读全文
摘要:UIView封装的动画与CALayer动画的对比 使用UIView和CALayer都能实现动画效果,但是在真实的开发中,一般还是主要使用UIView封装的动画,而很少使用CALayer的动画。 CALayer核心动画与UIView动画的区别:UIView封装的动画执行完毕之后不会反弹。即如果是通过C
阅读全文
摘要:在项目中我们经常会用到代理的设计模式,这是iOS中一种消息传递的方式,也可以通过这种方式来传递一些参数。这篇文章会涵盖代理的使用技巧和原理,以及代理的内存管理等方面的知识。我会通过这些方面的知识,带大家真正领略代理的奥妙。写的有点多,但都是干货,我能写下去,不知道你有没有耐心看下去。本人能力有限,如
阅读全文
摘要:1、在NSObject类中使用UI控件倒入 #import <UIKit/UIKit.h>可以 #import <UIKit/>提示uikit file not found ?为什么 2、为什么GCD主队列同步会卡,但是串行同步正常,不是一样的吗
阅读全文
摘要:1、多线程、特别是NSOperation 和 GCD 的内部原理。
阅读全文
摘要:可参考链接 UICoordinateSpace 接口,从当前视图的坐标转化到在screen的坐标体 <font color=#0099ff size=7 face="黑体">iOS的屏幕的变化的时候,界面和屏幕变化之间的关系。以iOS8为分隔点。</font> UIView 最为基础的属性 其他的属
阅读全文
摘要:你的NSTimer为什么释放不掉? (一):http://www.jianshu.com/p/2287344894ae dispatch_source_t 比 NSTimer 更准的定时器: http://www.jianshu.com/p/faa6ffe4fac3
阅读全文
摘要:1、objc中向一个nil对象发送消息将会发生什么 2、autrelease什么时候会被释放? 《Objective-C基础教程》上说:自动释放(autorelease)是一种延迟释放机制,这样保证局部堆上的变量能够被外部正常使用。 但是,系统又是什么时候释放的呢?在每一个事件周期(event cy
阅读全文
摘要:首先就是Block是什么?用一句话来概括就是带有自动变量的匿名函数。那么我们解释清楚了什么是“匿名函数”,什么是“自动变量”,那么相信大家大概就对Block有了一个大概的认识。 匿名函数匿名函数顾名思义就是不带名字的函数,在C语言中不允许这样的方法存在,而在OC中的Block则可以用指针来直接调用一
阅读全文
摘要:nil:指向oc中对象的空指针 Nil:指向oc中类的空指针 NULL:指向其他类型的空指针,如一个c类型的内存指针 NSNull:在集合对象中,表示空值的对象 若obj为nil: [obj message]将返回NO,而不是NSException 若obj为NSNull: [obj message
阅读全文
摘要:下面我们来说说delegate为啥定义时要用weak修饰符,这个涉及到循环引用的问题。例如一个ViewController上通过强指针引用了一个tableview,tableview的datasource和delegate都必须是weak指针,因为viewController被他两指向,如果用str
阅读全文
摘要:编译时 编译时顾名思义就是正在编译的时候.那啥叫编译呢?就是编译器帮你把源代码翻译成机器能识别的代码.(当然只是一般意义上这么说,实际上可能只是翻译成某个中间状态的语言.比如Java只有JVM识别的字节码,C#中只有CLR能识别的MSIL.另外还有啥链接器.汇编器.为了了便于理解我们可以统称为编译器
阅读全文
摘要:1)ios核心类 UIView 视图,屏幕上能看得见的东西都是视图,例如:按钮、文本标签、和表格等 UIViewController:内部默认有个视图(UIView),负责管理UIView的生命周期、装配数据到UIView上显示、处理其事件 ios采用MVC模式:model -view -contr
阅读全文
摘要:Objective-C具有相当多的动态特性,基本的,也是经常被提到和用到的有动态类型(Dynamic typing),动态绑定(Dynamic binding)和动态加载(Dynamic loading)。 这些动态特性都是在Cocoa程序开发时非常常用的语言特性,而在这之后,OC在底层也提供了相当
阅读全文
摘要:1、一定要在主线程中更新UI 1、在子线程中是不能进行UI 更新的,而可以更新的结果只是一个幻像:因为子线程代码执行完毕了,又自动进入到了主线程,执行了子线程中的UI更新的函数栈,这中间的时间非常的短,就让大家误以为分线程可以更新UI。如果子线程一直在运行,则子线程中的UI更新的函数栈 主线程无法获
阅读全文
摘要:1、OC中字符串为什么要用Copy 在iOS开发中,我们在定义一个NSString的时候都会用copy来修饰, @property (nonatomic, copy)NSString *str; 那为什么不用strong呢,我写了一个测试,来简单的说明一下 首先把修饰符写成strong 在viewD
阅读全文
摘要:iOS常见的几种加密方法 普通加密方法是讲密码进行加密后保存到用户偏好设置中 钥匙串是以明文形式保存,但是不知道存放的具体位置 一. base64加密 base64 编码是现代密码学的基础 基本原理: 原本是 8个bit 一组表示数据,改为 6个bit一组表示数据,不足的部分补零,每 两个0 用 一
阅读全文
摘要:网站布局之 浮动(float)和定位(position)(绝对定位,相对定位,静态固定定位),***什么叫脱离文档流? @参考文档:http://www.cnblogs.com/jenry/archive/2007/07/15/818660.html @什么叫脱离文档流?注意,只有绝对定位absol
阅读全文
摘要:iOS开发常用技术底层实现(精简概述) 本章将对ios开发技术底层实现的总结,其实关于ios开发中各种底层的实现,网上相关文章多到数不过来,而不且非常不错,我也没有自信我能比他们做的更好,因为毕竟每个人专研的东西不一样,本文主要正对三类用户! 资深的ios开发者,对底层做过专门研究,但是没有一个系统
阅读全文
摘要:在平常我们用到块级元素的时候,如果我们将两个块级元素嵌套在一个div中,在正常情况下,这两个块级元素会从上到下一次排列,即一个在上,一个在下,如果我们希望做到将这两个块级元素排列在一排我们可以通过display属性的inline-block值使两个块标签在同一行显示。 比如有两个标签div1和div
阅读全文
摘要:margin的解析逻辑 目前我们已经了解到了margin的基本特性和基本写法,但对元素margin的基本解析逻辑还是很模糊,到底margin的top、right、bottom、left都是以什么为基准来促使box model形成。为了形象,易懂的对margin的逻辑进行说明,下面讲解的过程中,将引入
阅读全文