随笔分类 -  iOS

iOS开发系列,知识总结
摘要:1.MRC是什么,有什么用? 在苹果开发中,我们是没有垃圾回收机制的。所以在ARC推出之前,我们苹果开发程序员需要通过手动代码的形式尽量严密的管理我们的App的内存; 2.如何运用MRC管理内存? 1)实际关键字: 无论是ARC还是MRC管理内存都涉及到几个关键字符: 使用alloc、new、cop 阅读全文
posted @ 2019-02-05 21:20 Van·Zhang 阅读(772) 评论(0) 推荐(0)
摘要:在开发iOS程序时,有时候需要将时间格式调整成自己希望的格式,这个时候我们可以用NSDateFormatter类来处理。下面来介绍NSDateFormatter的常用属性和API; 1.常用属性 @property (null_resettable, copy) NSString *dateForm 阅读全文
posted @ 2018-09-28 10:42 Van·Zhang 阅读(915) 评论(0) 推荐(0)
摘要:Foundation框架—集合 一、NSArray和NSMutableArray (一)NSArray不可变数组 (1)NSArray的基本介绍 NSArray是OC中使用的数组,是面向对象的,以面向对象的形式操纵对象,是不可变数组。 C语言数组有一个缺点即数组中只能存放同种数据类型的元素。 OC数 阅读全文
posted @ 2018-09-21 13:29 Van·Zhang 阅读(252) 评论(0) 推荐(0)
摘要:Foundation框架—结构体 一、基本知识 Foundation—基础框架。框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础。 如果要想使用foundation框架中的数据类型,那么包含它的主头文件就可以了。 即#import<foundation/founda 阅读全文
posted @ 2018-09-21 13:29 Van·Zhang 阅读(384) 评论(0) 推荐(0)
摘要:一、BOLCK (一)简介 BLOCK是什么?苹果推荐的类型,效率高,在运行中保存代码。用来封装和保存代码,有点像函数,BLOCK可以在任何时候执行。 BOLCK和函数的相似性:(1)可以保存代码(2)有返回值(3)有形参(4)调用方式一样。 标识符 ^ (二)基本使用 (1)定义BLOCK变量 I 阅读全文
posted @ 2018-09-21 13:28 Van·Zhang 阅读(555) 评论(0) 推荐(0)
摘要:UIImagePickerController 是一个管理系统多媒体文件库(相册)中的图片、视频文件的视图控制器,诞生于iOS4之前,虽然功能不是很完善,我们仍可以用这个视图控制器做一些有创造性的开发,接下来会对其的常见和主要的使用逐个介绍。 首先 贴上一张图,帮助我们了解UIImagePicker 阅读全文
posted @ 2018-09-19 00:06 Van·Zhang 阅读(2266) 评论(0) 推荐(0)
摘要:一、@property @synthesize关键字 注意:这两个关键字是编译器特性,让xcode可以自动生成getter和setter的声明和实现。 (一)@property 关键字 @property 关键字可以自动生成某个成员变量的setter和getter方法的声明 @property in 阅读全文
posted @ 2018-09-17 23:15 Van·Zhang 阅读(415) 评论(0) 推荐(0)
摘要:OC面向对象—多态 一、基本概念 多态在代码中的体现,即为多种形态,必须要有继承,没有继承就没有多态。 在使用多态是,会进行动态检测,以调用真实的对象方法。 多态在代码中的体现即父类指针指向子类对象。 Animal类的声明 Animal类的实现 Dog类继承自Animal类 Dog类的实现 测试程序 阅读全文
posted @ 2018-09-16 13:46 Van·Zhang 阅读(383) 评论(0) 推荐(0)
摘要:OC面向对象—继承 一、基本概念 程序的世界和人类的“对象”世界在思想上是没有设么区别的,富二代继承了父母,自然就拥有了父母拥有的所有资源,子类继承了父类同样就拥有了父类所有的方法和属性(成员变量)。 在这里动物是猫类和狗类的父类,黑猫和白猫类是猫类的子类。 继承的好处: (1)抽取出了重复的代码 阅读全文
posted @ 2018-09-16 13:45 Van·Zhang 阅读(380) 评论(0) 推荐(0)
摘要:OC面向对象—封装 一、面向对象和封装 面向对象的三大特性:封装(成员变量)、继承和多态 在OC语言中,使用@interface和@implementation来处理类。 @interface就好像暴露在外面的时钟表面,像外界提供展示以及接口。@implementation就好像隐藏在时钟内部的构造 阅读全文
posted @ 2018-09-16 13:43 Van·Zhang 阅读(410) 评论(0) 推荐(0)
摘要:OC内存管理 一、基本原理 (一)为什么要进行内存管理。 由于移动设备的内存极其有限,所以每个APP所占的内存也是有限制的,当app所占用的内存较多时,系统就会发出内存警告,这时需要回收一些不需要再继续使用的内存空间,比如回收一些不再使用的对象和变量等。 管理范围:任何继承NSObject的对象,对 阅读全文
posted @ 2018-09-16 13:42 Van·Zhang 阅读(432) 评论(0) 推荐(0)
摘要:OC方法和文件编译 一、OC方法 (一)对象方法 (1)对象方法以-开头如 -(void)xx; (2)对象方法只能又对象来调用 (3)对象方法中可以访问当前对象的成员变量 (4)调用格式 [对象名 对象方法名]; (5)设计一个学生类和狗类,练习对象方法的使用。 学生类的声明: 学生类的实现: 狗 阅读全文
posted @ 2018-09-16 13:41 Van·Zhang 阅读(919) 评论(0) 推荐(0)
摘要:OC语言基础知识 一、面向对象 OC语言是面向对象的,c语言是面向过程的,面向对象和面向过程只是解决问题的两种思考方式,面向过程关注的是解决问题涉及的步骤,面向对象关注的是设计能够实现解决问题所需功能的类。 术语:OO面向对象、OOP面向对象编程 二、类 (一)关于类 类的设计只关注三个东西:类名、 阅读全文
posted @ 2018-09-16 13:39 Van·Zhang 阅读(674) 评论(0) 推荐(0)
摘要:前言: 从事iOS开发已有几个年头,平时对于iOS开发的知识积累都比较碎片化,为了更好的掌握开发技能, 索性整理iOS开发的知识体系,以便于后期自身不断进阶。 一、iOS开发基础 开发设备Mac的使用 mac终端命令 常规操作 使用mac电脑,对Github客户端的简单操作1 开源项目 Mac下Gi 阅读全文
posted @ 2018-09-16 10:22 Van·Zhang 阅读(3230) 评论(0) 推荐(1)
摘要:苹果开发者客服:4006701855,有任何问题打这个电话,同时记录打电话的案例编号,方便下次打电话使用 1 申请一个邮箱 用于注册苹果开发者账号 ,我的邮箱 :, 密码: 2 注册开发者账号 1 注册官网 官网地址: https://developer.apple.com/programs/ios 阅读全文
posted @ 2018-04-24 16:44 Van·Zhang 阅读(10558) 评论(2) 推荐(0)
摘要:首先我们来看一看UIFont的API里面有哪些属性: [objc] view plain copy // Font attributes @property(nonatomic,readonly,strong) NSString *familyName; @property(nonatomic,re 阅读全文
posted @ 2018-04-15 20:41 Van·Zhang 阅读(1978) 评论(0) 推荐(0)
摘要:开发过程中,经常会遇到动态计算行高的问题, - (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options attributes:(nullable NSDictionary<NSString * 阅读全文
posted @ 2018-04-15 18:40 Van·Zhang 阅读(1378) 评论(0) 推荐(0)
摘要:总结一些interface声明时的规范,相关宏的介绍,定义方法时有用的修饰符,编写注释的规范,最终写出一个合格的头文件。 1.读写权限 1.1实例变量的@public,@protected,@private关键字 1.2属性的readonly,readwrite关键字 2.前向声明 3.只暴露必要的 阅读全文
posted @ 2018-04-15 18:08 Van·Zhang 阅读(679) 评论(0) 推荐(0)
摘要:1. 正常来说,启动图以及App图标需按照命名规则命名, 但是命名不规范并不影响显示; 2. 设置启动图的两种方法: (1) iOS 8—xcode 6 之后新出LaunchScreen.storyboard(LaunchScreen.xib)来设置启动图; 当系统版本高于iOS8.0默认优先会显示 阅读全文
posted @ 2018-04-14 17:56 Van·Zhang 阅读(5596) 评论(0) 推荐(0)
摘要:要理解这两个方法。先了解一下用户触摸屏幕后的事件传递过程。 当用户点击屏幕后,UIApplication 先响应事件,然后传递给UIWindow。如果window可以响应。就开始遍历window的subviews。遍历的过程中,如果第一个遍历的view1可以响应,那就遍历这个view1的subvie 阅读全文
posted @ 2018-04-14 16:51 Van·Zhang 阅读(2431) 评论(0) 推荐(0)