![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
iOS
文章平均质量分 68
你飞跃俊杰
CV大法的程序员
展开
-
2022年iOS面试题简答题
级别方面:iOS中级:基础70%,底层原理20%,架构10%iOS高级:基础10%,底层原理50%,架构20%,算法20%iOS架构:底层原理50%,架构20%,算法20%,手写算法10%iOS专家:底层原理20%,架构20%,算法40%,手写算法20%总的来说就是:中级偏向运用,会不会使用,怎么使用,有没有使用过。高级偏向底层原理,底层是怎么实现的,你在哪里使用过架构偏向为什么这么设计(这样设计解决了什么问题,又出现了什么新的问题)一般都是第三方框架,比如ASI和AFN,http2.0和原创 2022-03-03 10:16:27 · 3312 阅读 · 0 评论 -
Objective-C Runtime 运行时之一:类与对象
Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理。这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一个方法的实现等。这 种特性意味着Objective-C不仅需要一个编译器,还需要一个运行时系统来执行编译的代码。对于Objective-C来说,这个运行时系统就像一 个操作系统一样:它让所有的翻译 2016-08-19 17:42:01 · 476 阅读 · 0 评论 -
NSDate 时间比较
由 NSDate 转换为 NSString:NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];NSString *strDate = [dateFormatter stringFromDate:[原创 2015-09-10 17:52:41 · 1138 阅读 · 0 评论 -
ALAsset,ALAssetsLibrary,ALAssetsgroup常见属性及用法
ALAssetsgroup--------------------------------------------------------------------------- Enumerating Assets(遍历资源)– enumerateAssetsUsingBlock:(用一个block来遍历组里的资源)– enumerateAssetsWithO原创 2015-08-03 17:54:37 · 394 阅读 · 0 评论 -
OC学习笔记
一、OC简介> C语言的基础上,增加了一层最小的面向对象语法> 完全兼容C语言> 可以在OC代码中混入C语言代码,甚至是C++代码> 可以使用OC开发Mac OS X平台和iOS平台的应用程序 二、OC语法预览1. 关键字> 基本上所有关键字都是以@开头> 下面列举一些常见的关键字,看一眼就行了,不用去翻资料查找它们的含义@interface、@impl转载 2015-04-04 14:40:18 · 505 阅读 · 0 评论 -
使用GTMBase64编码解码字符串
#import "GTMBase64.h"- (void)testExample{ NSData *data = [@"HelloWorld" dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES]; NSString* encoded = [[NSString alloc] initWith转载 2015-04-04 14:37:04 · 780 阅读 · 0 评论 -
日期和日期相减
//实例化一个NSDateFormatter对象 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; //设定时间格式,这里可以设置成自己需要的格式 [dateFormatter setDateFormat:@"yyyyMMdd"];NSDate *toDate = [formater转载 2015-04-04 14:38:55 · 651 阅读 · 0 评论 -
谓词NSPredicate
NSMutableArray *array = [[NSMutableArray alloc]init]; for (int i = 0 ; i Person *person = [[Person alloc]init]; if (i person.name = [NSString st原创 2015-04-04 14:41:00 · 396 阅读 · 0 评论 -
简单介绍以下几个宏: 1
简单介绍以下几个宏:1) __VA_ARGS__ 是一个可变参数的宏,这个可变参数的宏是新的C99规范中新增的,目前似乎只有gcc支持(VC6.0的编译器不支持)。宏前面加上##的作用在于,当可变参数的个数为0时,这里的##起到把前面多余的","去掉,否则会编译出错。2) __FILE__ 宏在预编译时会替换成当前的源文件名3) __LINE__宏在预编译时会替换成当前的行号4转载 2015-04-04 14:42:06 · 461 阅读 · 0 评论 -
声明和创建Blocks 3.1 声明一个block的引用
Block 变量拥有 blocks 的引用。你可以使用和声明函数指针类似的语法来声明它 们,除了它们使用 ^修饰符来替代 * 修饰符。Block 类型可以完全操作其他 C 系统 类型。以下都是合法的 block声明: void (^blockReturningVoidWithVoidArgument)(void); int (^blockReturning转载 2015-04-04 14:42:04 · 430 阅读 · 0 评论