OC内存管理
内存管理 一》》》 (一) 基本原理 : 移动设备的内存是有限的,所以每一个APP占用的内存也是有限的,当APP占用过多内存时,系统会发出内存警告,因此需要收回一些不需要继续使用的内存空间,例如:对象 变量等。 管理范围:任何继承NSObject的对象,对其他的基本数据类型无效。 本质原因:对象和基本数据类型在数据中的内存空间不一样,其它...【详细】
acute_iOS000 2016年03月05日 赞:1 评论:0 阅读:543
关于Objective-C新增的__kindof关键字
Objective-C随着Xcode 7的升级带来了许多新特性,当然此次更新最最大的就是引入了Objective-C的轻量级泛型,确切地说是Objective-C类的轻量级泛型。除此之外,还有一个小特性就是__kindof关键字的引入。 有些技术网站上声称__kindof一般用于泛型,比如:NSArray<__kindof UIView*>表示在此NSArray对象中存放的是UIView对象或UIView子类对象。不过,由于O...【详细】
zenny_chen 2016年03月05日 赞:1 评论:0 阅读:612
Objective-C中使用不定参数个数的方法调用
Objective-C中,定义并使用带有不定参数个数的对象方法与C函数类似,规则上也要求不定参数列表中必须至少要有一个形参,然后参数列表的最后跟省略号表示不定参数。省略号不能放在参数当中部分,只能放在末尾。 比如: @interface MyObject : NSObject - (void)method:(id)param1 param2:(NSNumber*)param2, ...; @end @implementation MyObject - (void)method:(id)param1 param2:...【详细】
zenny_chen 2016年03月05日 赞:1 评论:0 阅读:569
OS X 强制退出
1、使用键盘快捷键强制退出处于活跃状态的Mac程序 快捷键:Command+Option+Shift+Esc 这样按住一两秒钟,就可以强制退出当前程序了,算是最方便的一种方法。 2、打开强制退出程序窗口 使用快捷键:Command+Option+Esc 来打开“强制退出应用程序”的窗口,然后选中你需要退出的程序,再点右下方的“强制退出”即可。 3、从Dock中强制退出程序 按...【详细】
ios
xlsn0w 2016年03月04日 赞:0 评论:0 阅读:693
用户点击屏幕后,系统会做哪些处理?
当用户点击屏幕后,会产生一个触摸事件,事件最先由该控件本身处理,如果该控件自身不处理事件,事件会传播到它对应的视图控制器,如果视图控制器不处理,再传给该控件的父控件(UIView); 如果该控件的父控件不处理该事件,事件会传递给父控件的视图控制器……直到顶层对应的视图控制器。 如果还没处理就会传播到应用程序窗...【详细】
佐目艮跳跳 2016年03月04日 赞:0 评论:0 阅读:474
堆和栈的区别?
管理方式: 栈是由编译器进行管理,无需我们手动控制. 堆的释放工作由程序员进行管理,容易产生内存泄露. 申请大小: 栈是向低地址扩展的数据结构,是一块连续的内存区域,能从栈获得的空间较小 ,编译时就确定了大小. 堆是向高地址扩展的数据结构,是不连续的内存区域,堆获得的空间比较灵活,也比较大. 碎片问题: 栈是先进后出的队列,不会...【详细】
堆和栈
佐目艮跳跳 2016年03月04日 赞:0 评论:0 阅读:589
常用UNIX指令
常用UNIX指令: ls 显示当前目录下的所有内容 pwd 显示当前目录的名称 cd 改变当前目录的名称 who 显示当前用户名 clear 清屏 mkdir 新建一个目录 touch 新建一个文件(文件不存在才会建) open 打开一个文件夹 rm :删除文件夹 -f 强制删除 按一下tab键,可以自动 补齐指令。【详细】
unix
佐目艮跳跳 2016年03月04日 赞:0 评论:0 阅读:446
XCode 技巧篇
XCode 技巧篇 1.显示代码行号 xcode -> Preferences(偏好设置)->Text Editing —>show: Line numbers 打勾。 2,调整源代码和控制台代码显示大小 xcode -> Preferences(偏好设置)->Text Editing —>Font & Colors —>Source Eitor(源代码) Console(控制台)—> Command+A —>在最下面的Font 右面点 T 打开调整字体大小。 Xcode快捷键 文件 CMD + N: 新文件; CMD + SHIFT...【详细】
xcode
佐目艮跳跳 2016年03月04日 赞:0 评论:0 阅读:633
入住cocoachina博客
How to use var option1 = { insert:true, preview:true, textHeight:'300px', baseUrl:'theme/default.html', target:'#editor1' }; $(function(){ SuMarkdown(option); });【详细】
鸡汤
苏小妖 2016年03月04日 赞:0 评论:0 阅读:504
CocoaChina博客频道上线,找bug提建议即可领奖[附博客使用指南]
亲爱的小伙伴们~~ CocoaChina博客频道已经正式改版上线啦!!>>去围观: http://blog.cocoachina.com/ 和之前所有频道上线一样,也准备了丰富的找bug提建议的礼物哦~~~看完使用指南一直往下拉,一睹真容~~ 博客频道使用指南 博客首页 博主页 写博客后台 经过反复测试,可能还有一些漏网bug,特此上线之初,号召小伙伴一起参与CC博客...【详细】
ccsupport 2016年03月04日 赞:0 评论:0 阅读:677
判断一个类是否有某一个属性
(BOOL)hasDelegate { unsigned int outCount = 0; objc_property_t properties = class_copyPropertyList([_currentPopView class], &outCount); BOOL flag; for (int i = 0; i < outCount; i++) { objc_property_t property = properties[i]; NSString propertyNameStr = [NSString stringWithUTF8String:property_getName(property)]; if ([propertyNameStr rangeOfString:@"delegate"].location != NSNotFound) { flag = YES; break; } } free(properties); r...【详细】
属性
千年雪域 2016年03月04日 赞:1 评论:1 阅读:583
Cocoapods安装步骤
1.升级Ruby环境 sudo gem update --system 如果Ruby没有安装,请参考 如何在Mac OS X上安装 Ruby运行环境 2.安装CocoaPods时我们要访问cocoapods.org,用淘宝的RubyGems镜像来代替官方版本,执行以下命令: $ gem sources --remove https://rubygems.org/ //等有反应之后再敲入以下命令 $ gem sources -a http://ruby.taobao.org/ 为了验证你的Ruby镜像是并且仅是taobao,可以用以下命令...【详细】
780311682 2016年03月03日 赞:2 评论:0 阅读:681
iOS 'The sandbox is not sync with the Podfile.lock'问题解决
问题描述: github下载的Demo,很多时候使用到CocoaPods,有的时候因为依赖关系或者版本问题不能编译运行。出现例如The sandbox is not sync with the Podfile.lock问题时候,如下所示 diff: /../Podfile.lock: No such file or directory diff: Manifest.lock: No such file or directory error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.` 解决方案...【详细】
780311682 2016年03月03日 赞:0 评论:4 阅读:782
IOS开发之delegate和Notification的区别
区别一:delegate针对一对一关系,并且reciever接受者可以返回值给sender发送者;notification 可以针对一对一或一对多,reciever接受者无法返回值给sender发送者;所以,delegate用于sender发送者希望接收到reciever接受者的某个功能反馈值,notification用于通知多个object对象某个事件。   区别二:   Delegate:消息的发送者(sender)告知接收者(receiver)某...【详细】
区别一 区别二 delegate Notification 区别三 delegate用于声明委托.
把我昨天de明天 2016年03月03日 赞:0 评论:0 阅读:720
CocoaPods 安装 使用
字数973 阅读3025 评论5 喜欢8 1.开启 terminal 2.移除现有 Ruby 默认源 $ gem sources --remove https://rubygems.org/ 3.使用新的源 $ gem sources -a https://ruby.taobao.org/ 4.验证新源是否替换成功 $ gem sources -l 5.安装 CocoaPods $ sudo gem install cocoapods $ pod setup 备注:苹果系统升级 OS X EL Capitan 后安装改为: $ sudo gem install -n /usr/local/bin cocoapods $ pod setup 6.更新 gem $ sudo gem upd...【详细】
780311682 2016年03月03日 赞:0 评论:0 阅读:848
iOS_根据文字字数动态确定Label宽高
iOS7中用以下方法 (CGSize)sizeWithAttributes:(NSDictionary *)attrs; 替代过时的iOS6中的- (CGSize)sizeWithFont:(UIFont *)font 方法 / /设置Label的字体 HelveticaNeue Courier UIFont *fnt = [UIFont fontWithName:@"HelveticaNeue" size:24.0f]; _nameLabel.font = fnt; // 根据字体得到NSString的尺寸 CGSize size = [_nameLabel.text sizeWithAttributes:[NSDictionary dictionaryWithObjectsAndKeys:fnt,NSFontAttributeName, nil...【详细】
iOS7 替代 设置 名字 宽度W 高度H
把我昨天de明天 2016年03月03日 赞:0 评论:0 阅读:782
iOS开发中代理、KVO、通知之间的区别
在iOS开发中经常会需要在多个Controller之间进行通信,为了降低Controller之间的耦合性,开发中经常会用到代理、KVO、通知等,那他们之间又有什么区别。 • Delegate(代理) 特点:一对一 优点:严格的语法;协议必须在controller的作用域范围内定义;能够接收调用的协议方法的返回值,即可以有反馈信息。 缺点:效率低,需要定义比较多的代...【详细】
iOS开发 代理、kvo、通知
傲云 2016年03月03日 赞:1 评论:0 阅读:1264
提供一种比较简单的单选表的实现
ios 单选表简单实现
YaSuoo 2016年03月03日 赞:0 评论:1 阅读:837
CocoaAsyncSocket网络通信使用之Protobuf安装(五)
CocoaAsyncSocket网络通信使用之Protobuf安装(五) Protocol Buffers是Google推出的工具,主要用来处理数据的序列化和反序列化,能够针对数据的不同类型做压缩存储,从而减少网络数据传输的大小。 一般我们在写数据协议的时候,都需要针对不同的平台实现多次数据解析方法,而Protocol Buffers的另一个功能就是一次模版定制,多平台编译使用。 P...【详细】
tcp socket protobuf protocol buffers
zhu410289616 2016年03月02日 赞:0 评论:5 阅读:1599
使用Xcode和Instruments调试解决iOS内存泄露
虽然iOS 5.0版本之后加入了ARC机制,由于相互引用关系比较复杂时,内存泄露还是可能存在。所以了解原理很重要。 这里讲述在没有ARC的情况下,如何使用Instruments来查找程序中的内存泄露,以及NSZombieEnabled设置的使用。 本文假设你已经比较熟悉Obj-C的内存管理机制。 实验的开发环境:XCode 4.5.2 1、运行Demo。 先下载一个实现准备好的内存泄...【详细】
ios
729624294 2016年03月02日 赞:0 评论:1 阅读:1097
共1307个 共66页 首页60616263646566
sina weixin mail 回到顶部