摘要:二:抽屉效果的使用: 1:当我们用别人封装好的框架时,若不是不符合需求尽量不要修改源代码,采用继承的方式去利用别人封装好的框架 2:当我们已经在xib或是storyboard中拖进去控件的时候,此时又新建立了一个类,想与xib或是storyboard中的拖进去的控件相关联,此时可以在xib或是sto
        
阅读全文
 
        
            
            
摘要:#import "ViewController.h" @interface ViewController () @property (weak, nonatomic) IBOutlet UIImageView *imageV; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]...
        
阅读全文
 
        
            
            
摘要:#import "ViewController.h" @interface ViewController () @property (weak, nonatomic) IBOutlet UIImageView *imageV; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]...
        
阅读全文
 
        
            
            
摘要:2:hitTest 方法的练习1: 业务逻辑: 底部一个按钮, 按钮的上面有一个View,遮挡在按钮的上面. 点击View时, View接收事件,当发现点击的点在按钮的位置时, 让底部的按钮处理事件. 实现思路: 实现View的touchBegain方法,先坚听UIView的点击. 并去实现UIVi
        
阅读全文
 
        
            
            
摘要:1:事件的产生与传递: 2:寻找最合适的view:如何查找最合适的view:需要三步:1:先判断自身是否能接受触摸事件 2:判断触摸点是否在自己身上 3:若前两条都满足,则其会从后往前遍历所有子控件(从后往前遍历是考虑到效率的问题,后指的是子控件数组中的最后一个控件)继续重复12步骤,直到找到最合适
        
阅读全文
 
        
            
            
摘要:1.事件是怎么样产生与传递的? 当发生一个触摸事件后,系统会将该事件加入到一个由UIApplication管理的事件队列中.(队列是先进先出,而栈是先进后出) UIApplication会从事件队列中取出最前面的事件,并将事件分发下去以便处理.首先交给主窗口keywindow去处理 主窗口会在视图层
        
阅读全文
 
        
            
            
摘要:1.ios当中常⽤的事件? 触摸事件 ,加速计事件 ,远程控制事件 2.什么是响应者对象? 继承了UIResponds的对象我们称它为响应者对象 UIApplication、UIViewController、UIView都继承⾃自UIResponder 因此它们都是响应者对象,都能够接收并处理事件 
        
阅读全文
 
        
            
            
摘要:#import "ViewController.h" @interface ViewController () @property (weak, nonatomic) IBOutlet UIImageView *imageV; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]...
        
阅读全文
 
        
            
            
摘要:1:坐标系转换最核心的问题就是:比较两个坐标是否包含,或者是重叠等,最主要的问题是先将两个坐标转换到同一个坐标系下再去比较。第一步先确定矩形框在某个view坐标系下的frame(该矩形框是以该view的左上角为坐标原点)2:再转换到另一个view坐标系下(转换后的坐标依然是以另一个view的坐标原点
        
阅读全文
 
        
            
            
摘要:1:block的循环引用问题最主要记住两点: 如果【block内部】使用【外部声明的强引用】访问【对象A】, 那么【block内部】会自动产生一个【强引用】指向【对象A】 如果【block内部】使用【外部声明的弱引用】访问【对象A】, 那么【block内部】会自动产生一个【弱引用】指向【对象A】 2
        
阅读全文
 
        
            
            
摘要:总结:1:从相册中选取照片可以利用UIImagePickerController,前提是必须遵守两个协议: <UIImagePickerControllerDelegate, UINavigationControllerDelegate>但是此种方法只能获取到相册中的一张照片。使用方法如下:1:可以
        
阅读全文
 
        
            
            
摘要:总结: ## NSDateFormatter的作用 - NSString \* -> NSDate * ```obj - (nullable NSDate *)dateFromString:(NSString *)string; ``` - NSDate \* -> NSString * ```ob
        
阅读全文
 
        
            
            
摘要:前言:做了一个图片浏览的小demo,支持随意添加、删除图片,图片放大、缩小,带矩形框的截图。随后几篇博客都会详细讲解在此过程中遇到的各种问题。这篇主要讲,在做添加、删除这个功能时,遇到的存文件的问题。 我们想实现在以后每次打开这个程序时,不用再一张张手动添加,而会保留用户上次已经选择的图片,那么就需
        
阅读全文
 
        
            
            
摘要:一:基本概念 1:进程:正在运行的程序为进程。 2:线程:每个进程要想执行任务必须得有线程,进程中任务的执行都是在线程中。 3:线程的串行:一条线程里任务的执行都是串行的,假如有一个进程开辟了一条线程,此条线程里有ABC三个任务,则ABC三个任务的执行是串行的,ABC三个任务按顺序一个个执行 4:多
        
阅读全文
 
        
            
            
摘要:1 import "ViewController.h" 2 3 @interface ViewController () 4 /*weak*/ 5 @property (nonatomic,weak)UISwitch *weakSwitch; 6 /*strong*/ 7 @property (nonatomic ,strong)UISwitch *strongSw...
        
阅读全文
 
        
            
            
摘要:1:copy拷贝得到的对象都是不可变对象,MutableCopy拷贝得到的对象都是可变对象。MutableCopy拷贝得到的对象都是新的对象,会重新分配内存地址,而copy拷贝的对象既可以是新对象,也有可能是原来的对象,也就是内存地址可能与原来相同,可通过打印对象的%p内存地址来查看。当copy一个
        
阅读全文
 
        
            
            
摘要:1:全局常量的定义:1:创建Header头文件,再创建与Header头文件类名相同的空文件作为.m文件,.h文件引用文件,.m文件负责定义常量 补充:1:若无法识别CGFloat结构体,则引入头文件, #import <UIKit/UIKit.h> 2:.m文件中定义的常量,用const修饰代表常量
        
阅读全文
 
        
            
            
摘要:1:static关键字修饰局部变量:1:当static关键字修饰局部变量时,该局部变量只会初始化一次,在系统中只有一份内存 2:static关键字不可以改变局部变量的作用域,但是可延长局部变量的生命周期,该变量直到整个项目结束的时候才会被销毁 2:static修饰的全局变量:作用域仅限于当前文件,外
        
阅读全文