OC学习
文章平均质量分 73
慢慢向上爬的蜗牛
我总会爬上顶尖的程序员行列
展开
-
爬爬爬之路:OC语言(七) NSDate , 协议和代理
*NSDate1. 初始化方法有:``` // 创建一个距离现在时间n秒后的日期(昨天加上 -)+ (instancetype)dateWithTimeIntervalSinceNow:(NSTimeInterval)secs; // 创建一个距2001年1月1日n秒后的日期+ (instancetype)da原创 2015-11-03 20:21:45 · 474 阅读 · 0 评论 -
宏定义快捷应用之创建单例
// 宏定义如下:// .h文件// 意思为在需要创建成单例的类的.h文件中调用此宏定义#define SingletonH(name) + (instancetype)shared##name;// .m文件// 意思为在需要创建成单例的类的.m文件中调用此宏定义#define SingletonM(name) \static id _instance; \\+ (instanc原创 2016-06-27 19:45:20 · 440 阅读 · 0 评论 -
可变参数宏__VA_ARGS__
可变参数宏VA_ARGS 在 GNU C 中,宏可以接受可变数目的参数,就象函数一样,例如:#define pr_debug(fmt,arg...) \printk(KERN_DEBUG fmt,##arg)用可变参数宏(variadic macros)传递可变参数表 你可能很熟悉在函数中使用可变参数表,如: void printf(const char* format, …); 直到最近转载 2016-06-27 17:26:54 · 501 阅读 · 0 评论 -
@synthesize obj=_obj的意义详解 @property和@synthesize
http://hi.baidu.com/feng20068123/item/ca8952fa661e5342932af2c2写的非常不错,攒一个!!!!我们在进行iOS开发时,经常会在类的声明部分看见类似于@synthesize window=_window; 的语句,那么,这个window是什么,_ window又是什么,两个东西分别怎么用,这是一个比较基本的问题,也关乎我们理解转载 2016-01-19 14:55:59 · 394 阅读 · 0 评论 -
爬爬爬之路:OC语言(五) 字典 集合常用方法介绍
字典OC中字典是一个类似与数组的容器 保存的是一个个 键值对 所谓键值对 就是 一个key(键)对应一个value(值) 两者合成一个键值对 字典保存的内容是无序的, 不能像数组一样通过下标取出元素 字典存取元素需要通过唯一标识的key, 通过key获得对应的值. 存元素的的时候也需要给定一个唯一标识的key元素和值 都必须是对象key作为键值, 具有唯一性, 在开发中一般使用字符串原创 2015-10-30 23:10:29 · 612 阅读 · 0 评论 -
爬爬爬之路:OC语言(四) NSString NSSArray NSValue常用方法介绍
不可变字符串NSString1. 利用系统的类 初始化一个对象创建一个NSString对象, 调用其自定义初始化方法, 并对其进行初始化 NSString *str = [[NSString alloc] initWithString: @"123"]; 相当于NSString *str = @"123";NSLog(@"%@", str);打印结果为123用系统的便利构造器方法初始化对象原创 2015-10-29 22:34:19 · 1205 阅读 · 1 评论 -
爬爬爬之路:OC语言(二) 类
前言类 是具有相同特征和行为的事物的抽象 万事万物皆对象对象是类的实例类是对象的类型面向对象的特点分为:封装继承多态 如何看懂OC中的一个类在OC中 一个类中的成员, 分为实例变量和方法两种 写在.h文件中的方法在类外是可以调用的. 而实例变量虽然写在.h文件中, 但是它们能否在类外可以调用需要根据他们的修饰符定义的: 实例变量的可见度 可见度 特点 public原创 2015-10-27 22:17:57 · 578 阅读 · 0 评论 -
爬爬爬之路:OC语言(十) 内存管理(高级),多态简介
retain属性setter方法写法原理解析以retain属性的setter方法实现为例. 以assign的set get举例Person类里有一个属性 @property (nonatomic, assign) NSString *name; 它对应的setter getter方法如下:- (void) setName : (NSString *)name { // setter方法原创 2015-11-07 17:45:35 · 458 阅读 · 0 评论 -
爬爬爬之路:OC语言(九) 内存管理(初级)
内存管理的必要性由于从早期开始, 手机由于工业和大小的限制, 在手机上的内存是有限制的. 从早期的512k开始, 到1GB, 2GB乃至4GB但是手机上的应用数不胜数. 所以这需要手机的操作系统给一个应用分配一个空间, 如iPhone 5S给一个程序分配的内存是80M. 而像图片 音频 视频等资源是极其耗内存(如一张高清图片4M左右)的. 如果不对手机内存加以管理, 可能导致80M分分钟被占满, 然原创 2015-11-06 22:41:55 · 474 阅读 · 0 评论 -
爬爬爬之路:OC语言(一) 语法简介
前言OC是对C语言的扩充. C语言的弊端: 维护升级十分复杂 面向对象的特点: 封装 继承 多态 什么是对象: 万物皆对象OC的特点是C语言的超集, 允许在OC中使用C语言的源代码. 编译器兼容C语言程序具备完善的面向对象特性包含一个运行时系统类库丰富(指开发人员写的类库)分析对象是最重要的一环, 是保证程序的扩展性 健壮性 最重要的一步. 面向对象编程设计:分析设计到的对下原创 2015-10-26 21:46:30 · 855 阅读 · 0 评论 -
爬爬爬之路:OC语言(三) 继承
继承的理解继承从生活逻辑上理解是继承者从被继承者身上获得一些已有的信息, 财产等在面向对象中也一样, 继承是子类从父类中获得父类的全部实例变量和方法(父类在.h中声明的实例变量和方法)继承的优点:减少代码量, 提高工作效率 解释: 子类从父类中获得父类的实例变量和方法, 这时就不需要在子类中再写和父类中出现的代码了, 节省了所有父类中的全部代码. (父类中@private 声明的实例变量原创 2015-10-28 21:25:30 · 449 阅读 · 0 评论 -
爬爬爬之路:OC语言(八) 属性 KVC简单介绍
属性属性的定义Objective-C 2.0定义的语法, 为实例变量提供了setter getter方法的默认实现 能在一定程度上简化程序代码 声明属性关键字@property 如果实例变量为_xxx 声明为属性时把下划线去掉写成xxx声明成属性 代表系统默认帮助我们实现了setter和getter方法的声明 声明中: @property NSString *name;(此时称name为属原创 2015-11-04 22:58:38 · 697 阅读 · 0 评论 -
爬爬爬之路:OC语言(六) Block语法简介
回顾函数指针在学习Block语法之前需要先回顾一下函数指针 因为Block语法与函数指针非常相似 函数指针, 顾名思义就是指向函数的指针1. 函数指针的定义如定义一个函数如下:```int sumValue(int num1, int num2) { return num1 + num2;}```这本函数的类型为`int (int num1, int num2)`(去除函数名 即是原创 2015-11-02 20:21:13 · 863 阅读 · 0 评论 -
AVFoundation支持的音视频格式
AVFoundation支持音频文件(.caf、.aif、.wav、.wmv和.mp3)的播放 ,而在此框架下的AVPlayer支持的格式如下: 支持视频格式: WMV,AVI,MKV,RMVB,RM,XVID,MP4,3GP,MPG … 支持音频格式: MP3,WMA,RM,ACC,OGG,APE,FLAC,FLV… 支持外部字幕: smi,srt,ass,sub,txt…原创 2016-10-08 09:24:42 · 2273 阅读 · 1 评论