- 博客(7)
- 资源 (11)
- 收藏
- 关注
原创 iOS类重要的两个方法 load 和 initialize
load: 当类被引用进程序的时候会执行这个函数。 在一个程序开始运行之前(在main函数开始执行之前),在库开始被程序加载,load函数就会开始被执行。 我们开发的程序都可以认为是一个库,但是库又不会独立存在(我们的程序还会引用其他库,也可能被其他函数引用),所以库的初始化顺序可以如下: 1初始化我们引用的库 2执行我们自己库的Objective-C的load函数 3执行C++和
2016-12-20 20:31:18 1985
原创 iOS添加圆角好方法
一般我们都能想到通过layer来添加圆角,其实那是比较消耗性能的,尤其是列表cell里面控件使用 下面是一种比较好的方法 UIGraphicsBeginImageContextWithOptions(image.size, NO, image.scale); [[UIBezierPath bezierPathWithRoundedRect:RECT cornerRadius:RADI
2016-12-15 09:22:01 421
原创 weak和assign的区别
weak和assign都是引用计算不变,两个的差别在于,weak用于object type,就是指针类型,而assign用于简单的数据类型,如int BOOL 等。 assign看起来跟weak一样,其实不能混用的,assign的变量在释放后并不设置为nil(和weak不同),当你再去引用时候就会发生错误,崩溃,EXC_BAD_ACCESS.
2016-12-14 16:50:29 965
原创 NSSting由中文转换为拼音字符串的正确做法
最近做项目的时候需要用到这个功能,网上比较修行的第三方框架,已经在iOS10中转换失败, 以下是一种成功的做法,有更好的方法可以提出 - (NSString *) phonetic:(NSString*)sourceString { NSMutableString *source = [sourceString mutableCopy]; CFStringTransform((__bridge
2016-12-14 16:01:51 700
原创 __weak 与 __block的区别理解
__weak 与 __block的区别理解 __block对象在block中是可以被修改、重新赋值的 如果局部变量是数组或者指针的时候只复制这个指针,两个指针指
2016-12-14 09:22:39 461
原创 iOS用copy修饰Block
Block的三个类型: 1._NSConcreteGlobalBlock,全局的静态block,不会访问外部的变量。就是说如果你的block没有调用其他的外部变量,那你的block类型就是这种。 2._NSConcreteMallocBlock 保存在堆中的 block,当引用计数为 0 时会被销毁。 3._NSConcreteStackBlock 保存在栈中的 bl
2016-12-12 14:57:05 1520
原创 MethodSwizzling
利用OC的Runtime原理,我们可以实现MethodSwizzling 把一个我们未知其实现原理的方法进行扩展或者替换掉 + (void)load { // 源方法--原始的方法 // 目的方法--我们自己实现的,用来替换源方法 static dispatch_once_t onceToken; // MethodSwizzling代码只需要在类加载时调用一次,并且需要线程
2016-12-04 16:42:08 496
jsp中TextArea可视化编辑器ckEditor
2012-08-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人