iOS总结
CodeMan的博客
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
谈谈iOS的layoutSubviews机制
首先layoutSubviews这个方法会在什么情况下被调用呢?我们都知道layoutSubviews是UIView中的属性方法,即只要继承于UIView,就可以使用这个方法。 1.init初始化的时候不会触发layoutSubviews 2.addSubview会触发layoutSubviews 3.设置view的Frame,如果Frame发生改变,则触发layoutSubviews 4原创 2015-10-10 15:35:01 · 674 阅读 · 0 评论 -
runtime选择器和消息转发处理
方法相关的操作函数// 调用指定方法的实现 id method_invoke ( id receiver, Method m, ... );// 调用返回一个数据结构的方法的实现 void method_invoke_stret ( id receiver, Method m, ... );// 获取方法名 SEL method_getName ( Method m );// 返回方法的实现 IMP原创 2016-02-25 11:42:40 · 389 阅读 · 0 评论 -
runtime 关联对象的使用
examplestatic NSString *key; static NSString *blockKey; static NSString *clickkey;- (void)viewDidLoad { [super viewDidLoad]; [self showDetailText]; [self addClass]; [self initUI]; vo原创 2016-02-24 18:16:38 · 437 阅读 · 0 评论 -
runtime 类和对象的使用和基本的数据结构
类和对象基本的数据结构struct objc_class { // typedef struct objc_class *Class; // 所有的类自身也是一个对象,这个对象的Class里面也有一个isa指针,它指向metaClass(元类) Class isa OBJC_ISA_AVAILABILITY;#if !__OBJC2__ Class super_class原创 2016-02-24 15:44:21 · 453 阅读 · 0 评论 -
iOS SHA1算法
//哈希算法+ (NSData *)getHashBytes:(NSData *)plaintText { CC_SHA1_CTX ctx; uint8_t *hashBytes = NULL; NSData *hash = nil; // Malloc a buffer to hold hash hashBytes = malloc(kMChosenDiges原创 2016-02-16 12:56:00 · 584 阅读 · 0 评论 -
iOS 内存管理详解
在ARC下主要有以下几个关键字: 1.关键字 __strong 默认值,表示只要有强引用指针指向该变量,则该变量会一直存在。 2.关键字__weak 弱引用,表示若没有任何强引用指针指向该变量,会自动将变量的值置为空,即nil状态。 3.关键字 __autoreleasing 用于标示自动释放的变量 4.关键字__unsafe_unretained 不安全的弱引用,若没有任何强引用指针指向原创 2016-02-15 10:00:36 · 309 阅读 · 0 评论 -
iOS字符串处理详解
1.创建字符串: //字符串创建工厂 NSString*str1=[NSString stringWithFormat:@”%d, %d”,1,2]; NSString*str2=[NSString stringWithString:@”hello”]; NSString*str3=[NSString stringWithCString:”hello” encoding:NSUTF8Stri原创 2016-02-14 17:34:46 · 569 阅读 · 0 评论 -
iOS 控制器的生命周期
iOS中控制器的生命周期如下: .alloc->创建对象 .init->初始化对象 .loadView->从nib载入视图 .viewDidLoad->载入完成 .viewWillAppear->UIViewController对象的视图即将加入窗口时调用 .viewDidApper->UIViewController对象的视图已经加入到窗口时调用 .viewWillDisapper原创 2016-02-14 13:54:20 · 395 阅读 · 0 评论 -
iOS 程序的生命周期
1.applicationwillFinishLaunchingWithOptions: 程序将要启动 2.didFinishLaunchingWithOptions: 程序第一次启动时执行,如果直接启动,launchOptions是没有数据的,如果由其它应用启动,launchOptions是包含数据的 3.applicationWillResignActive: 应用进入后台,注销程序原创 2016-02-14 11:37:09 · 505 阅读 · 0 评论 -
Runtime Method Swizzling
//重写该方法,自动执行 +(void)load{ static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ Class class=[self class]; //获取方法的选择器 SEL originalSel=@selector(viewWillAppear:);原创 2016-02-25 13:49:22 · 320 阅读 · 0 评论
分享