ios
steiff_li
这个作者很懒,什么都没留下…
展开
-
【IOS】浅拷贝和深拷贝
阅读本文之前首先了解copy与retain的区别,如果有不正确的地方望大家多多指教:copy与retain的区别:copy是创建一个新对象,retain是创建一个指针,引用对象计数加1。Copy属性表示两个对象内容相同,新的对象retain为1 ,与旧有对象的引用计数无关,旧有对象没有变化。copy减少对象对上下文的依赖。 retain属性表示两个对象地址相同(建立一个指针,指针拷贝),内容当然转载 2015-04-15 15:10:42 · 331 阅读 · 0 评论 -
IOS 对象序列化(NSCoder)
对象系列化要点1.数据模型类的创建,并且在数据模型类中实现协议//序列化所调用的方法(void)encodeWithCoder:(NSCoder*)aCoder{NSLog(@"-======------1111");//编码的是该对象的属性[aCoderencodeObject:self.nameforKey:@"NAME_KEY"];[aCoderencodeObject:self.numb转载 2015-04-15 11:49:21 · 376 阅读 · 0 评论 -
Objective-C 的“多继承”
当单继承不够用,很难为问题域建模时,我们通常都会直接想到多继承。多继承是从多余一个直接基类派生类的能力,可以更加直接地为应用程序建模。但是Objective-C不支持多继承,由于消息机制名字查找发生在运行时而非编译时,很难解决多个基类可能导致的二义性问题。不过其实 Objective-C 也无需支持多继承,我们可以找到如下几种间接实现多继承目的的方法:消息转发 delegate和protocol转载 2015-04-16 16:57:44 · 292 阅读 · 0 评论 -
ios uitableview加入uiscrollview广告栏
最外层是一个uitableview,广告栏是一个uiscrollview,之前做过类似的例子,是在构造cell的方法cellForRowAtIndexPath中判断行数再添加uiscrollview,但是觉得代码不够整洁,总之是怎么看怎么不爽,于是决定尝试用uitableview head来解决,既然要用到head,那肯定就是要自定义一个view了以下是view的h文件@interface Adve转载 2015-04-29 11:00:05 · 399 阅读 · 0 评论 -
iOS 使用动态库(dylib)和动态加载framework
在iphone上使用动态库的多为dylib文件,这些文件使用标准的dlopen方式来使用是可以的。那相同的在使用framework文件也可以当做动态库的方式来动态加载,这样就可以比较自由的使用apple私有的framework了。dlopen是打开库文件dlsym是获取函数地址dlclose是关闭。 当然,要使用这种方式也是有明显缺陷的,那就是你要知道函数名转载 2015-05-28 10:59:21 · 1905 阅读 · 1 评论 -
Objective C运行时(runtime)技术的几个要点总结
前言: Objective C的runtime技术功能非常强大,能够在运行时获取并修改类的各种信息,包括获取方法列表、属性列表、变量列表,修改方法、属性,增加方法,属性等等,本文对相关的几个要点做了一个小结。目录:(1)使用class_replaceMethod/class_addMethod函数在运行时对函数进行动态替换或增加新函数(2)重载forwardingTargetForSele转载 2015-04-17 14:37:21 · 346 阅读 · 0 评论 -
iOS使用命令行进行企业版打包发布
1. 首先你得确定已安装好对应的.cer文件【注:如果是公司共享的文件的话,是一个从钥匙串导出的.p12文件】和.mobileprovision文件。【具体制作证书这里不再赘述】2. 首先,cd到你项目的根目录(.xcodeproj目录下) 1. 执行:xcodebuild clean 2. 执行:xcodebuild -sdk iphoneos9.2 【如果不知道ipho原创 2015-12-31 12:11:22 · 612 阅读 · 0 评论