随笔分类 - iOS知识储备
iOS初级开发-知识储备
摘要:原文发布者:http://blog.csdn.net/duxinfeng2010 在Mac上使用Xcode进行iOS-Apple苹果iPhone手机开发过程中少不了使用GitHub在Mac上托管代码,但繁琐的设置步骤往往会让我们望而生畏,在网上找了两种简易的设置方法.分享学习下. 方法⓵-用GitHub在Mac上托管代码 本篇博客针对不会Git的小童鞋,大神们可...
阅读全文
摘要:iOS-Apple苹果iPhone开发
//技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博http://weibo.com/luohanchenyilong 天气接口 气象局接口:
http://m.weather.com.cn/data/101010100.html解析用例 音乐接口 虾米接口
http://kuang.xiam...
阅读全文
摘要:本系列所有开发文档翻译链接地址:iOS7开发-Apple苹果iPhone开发Xcode官方文档翻译PDF下载地址
苹果API常用英语名词0. indicating决定1.inorder to以便2.rectangle bounds矩形尺寸3.applied应用4.entirety全部5.technique方法6.truncating截短7.wrapping换行8.string...
阅读全文
摘要:源码下载:04-计算代码行数.zip24.1 KB//// main.m// 计算代码行数//// Created by apple on 13-8-12.//技术博客http://www.cnblogs.com/ChenYilong/新浪微博http://weibo.com/luohanchenyilong
///**考察NSString、NSArray的使用* NSFileMana...
阅读全文
摘要:前言:这是一个两万余行的商业项目,但代码质量却不敢恭维! //本文永久链接,转载请注明出处:http://www.cnblogs.com/ChenYilong/p/3489939.html Technorati Tags: iOS, 代码优化
阅读全文
摘要:到了公司后,半个月时间就是在熟悉下面这张图里的流程,
项目流程图: 下面是我对这张图的一些理解:
阅读全文
摘要:摘要: 这是一篇CocoaChina的一个网友整理的Xcode快捷键大全,实在是太多了,我看得眼花缭乱的,不过还是非常实用,想学习就往下看吧!可能有些新手刚用mac,不知与windows键对应,现在说明一下,command相当于ms键盘的window键,option相当于alt键===============xcode相关================关于xcode 可设偏好设置 command+,清空缓存 可设隐藏xcode command+h隐藏其它 command+option+h显示全部 可设退出xcode command+q===============文件相关==========
阅读全文
摘要:Objective-C Enum 枚举数据类型解析,Enum 枚举数据类型将一系列值指派给一个变量。objective c enum ,objective-c 数据类型,enum 枚举类型,enum 数据类型。Enum 枚举数据类型将一系列值指派给一个变量。enum 枚举数据类型的名称、标识符序列包含在一对花括号内,如:以下为引用内容:
/***
* desteps.com
* 2011-8-14
***/
enumflag{false,true}; enumflagendOfData,matchFound;可指派true、false给这两个变量如果希望一个枚举标识符对应一个特定的整数值,那.
阅读全文
摘要:直接贴代码KeychainItemWrapper*keychain=[[KeychainItemWrapperalloc]initWithIdentifier:@"xxxxxx"accessGroup:nil];//xxxx 自定义保存[keyWrappersetObject:@"myChainValues"forKey:(id)kSecAttrService];[keyWrappersetObject:[usernameTextFieldtext]forKey:(id)kSecAttrAccount];// 上面两行用来标识一个Item[keyWrap
阅读全文
摘要:文中实例运行的编译环境为:概述 Storyboard,我直接翻译为故事画板,是Xcode4.2新增的又一个特性,它将原有工程中的所有xib文件集成在一起,用拖曳的方式建立ViewController相关之间的跳转关系,使得整个程序的UI跳转逻辑清楚明了。Storyboard可以帮助你解决写很多重复的跳转方法的麻烦,节省很多时间,以便你能够完全的专注于核心功能的实现上。 简单地说,Storyboard引入了2个概念:scene:一个场景,由一个viewController和相关的xib表示。segue:在这是用于连接scenes,其有多种类型,包括:Push,Modal,Popover and
阅读全文
摘要:1、language background2、runtime3、thread4、runloop5、delegate, protocol6、event responder7、memory management8、class heritage and category9、design pattern10、drawing issue首先请谅解我可能使用很多英文,毕竟英文资料将来会是你的主要资料来源。这篇博客将描述一些我见到的众多Cocoa开发新手遇到的问题和障碍。在你继续深入学习MacOS编程之前,请停下脚步弄清这些问题。如果你是新手,这个教程不要希望一次能看的非常透彻,学一定阶段反回来再看看又会有
阅读全文
摘要:关于关于分类(category)和类的扩展(extensions)的验证:分类的一大特性就是可以
:将类的实现分散到多个不同文件或多个不同框架中。分类允许分开编译,也就是说,同一个类也可以进行多人的分工合作;那如何才能实现分工合作呢?下面做一下验证:例子来自《iOS5开发基础教程》第8章(也就是《iOS5开发基础教程》最新版的“08 - Sections2”下载地址:http://vdisk.weibo.com/s/hBHg6)对该实例就行如下修改:Ctrl+N新建:// NSDictionary-MutableDeepCopy.h #import <Foundation/Foundat
阅读全文
摘要:KVO(NSKeyValueObserving:键 - 值编码的简称)与KVC(NSKeyValueCoding:键值观察机制的简称): 在很多时候接触到很多地方都有对 KVC,KVO 的描述,但是都是一笔带过。只知道这是Object-C提供的一个不错的机制,是能够让代码更简洁的特性。它们的目的截然不同:键值对编码可以通过选择第一个符合条件的实现而解决间接方法调用;属性则可以让编译器帮我们生成部分代码。键值对编码实际上是 Cocoa 引入的,而属性则是 Objective-C2.0语言新增加的。键值对编码(KVC)原则键值对编码意思是,能够通过数据成员的名字来访问到它的值。这种语法很类似于关.
阅读全文
摘要:1.Difference between shallow copy and deep copy?
浅复制和深复制的区别?
答案:浅层复制:只复制指向对象的指针,而不复制引用对象本身。
深层复制:复制引用对象本身。
意思就是说我有个A对象,复制一份后得到A_copy对象后,对于浅复制来说,A和A_copy指向的是同一个内存资源,复制的只不过是是一个指针,对象本身资源
还是只有一份,那如果我们对A_copy执行了修改操作,那么发现A引用的对象同样被修改,这其实违背了我们复制拷贝的一个思想。深复制就好理解了,内存中存在了
两份独立对象本身。
用网上一哥们通俗的话将就是:
浅复制好比你和你的影子,你完
阅读全文
摘要:47.kvc是什么?kvo是什么?有什么特性?48.响应者链是什么?49.unix上进程怎么通信? UNIX主要支持三种通信方式: 1. 基本通信:主要用来协调进程间的同步和互斥 (1)锁文件通信 通信的双方通过查找特定目录下特定类型的文件(称锁文件)来完成进程间 对临界资源访问时的互斥;例如进程p1访问一个临界资源,首先查看是否有一个特定类型文件,若有,则等待一段时间再查找锁文件。 (2)记录锁文件 2. 管道通信:适应大批量的数据传递 3. IPC :适应大批量的数据传递50.timer的间隔周期准吗?为什么?怎样实现一个精准的timer?51.UIscrollVew用到了什么设计模式?还
阅读全文
摘要:本文中示例的xcode版本为4.3.1方案1:NSZombieEnabled先选中工程, 依次 "Product"-"Edit Scheme", 左栏选择"Run...", 右栏选中Arguments,然后在Environment Variables下面添加以下三个属性, 设值为YESNSDebugEnabledNSZombieEnabledNSAutoreleaseFreedObjectCheckEnabled有时候在程序出错的时候能准确定位到奔溃的那一行,或者会给你下面这样的提示,而不仅仅是EXEC_BAD_ACCESS:mess
阅读全文
摘要:如果NSArray数组为空,要注意 如果NSArray数组为空,要注意这样的调用会停止。而不是返回空 [array objectAtIndex:0]为此我们做一个验证:如果一个数组为空,那么用这个空数组去初始化另一个数组,被初始化的数组会不会也为空? NSArray *array = [[NSArray alloc] initWithArray:nil]; NSArray *arrayNil = [NSArray arrayWithObject:[array objectAtIndex:0]]; 结果是:程序崩溃,捕获程序异常,后发现程序出错点就在 NSArray ...
阅读全文
摘要:我在学习iphone开发教程的中第8章(也就是《iOS5开发基础教程》最新版的“08 - Sections2”下载地址:http://vdisk.weibo.com/s/hBHg6)要为一个tableView实现搜索功能的时候,遇到了关于这个NSMutableDictionary一个问题,学习了好长时间终于想通,现在将问题以及我的理解总结一下.《iOS5开发基础教程》其中,在SectionViewController.m 中有这样一个方法:-(void)resetSearch { self.names = [self.allNames mutableDeepCopy]; N...
阅读全文
摘要:在学习Qt和IOS的过程中,感觉“Qt信号槽机制”与”iOS(MVC)中的Target—Action机制”有许多相似之处,现通过一个相同的程序来探究Qt与ios的实现过程的两个相同之处。ios中采用的是MVC这种设计模式,这种模式的关系如下所示:第一点相似之处:“信号槽机制”中构建元素搭配与Ios"Target-Action"构建有极大的相似之处:Qt:一个信号可以与多个槽构成“信号槽";一个槽可以与多个信号构成“信号槽”;信号与信号可以构成“信号槽”;而iOS一个target可以与多个Action构成“信号槽";一个Action可以与多个target构
阅读全文
摘要:类的实例化位导致两个问题:构造函数、析构函数和赋值运算符如何实现,以及如何分配内存。在 C++ 中,变量默认是“自动的”:除非被声明为 static,否则变量仅在自己的定义块中有意义。动态分配的内存可以一直使用,直到调用了 free() 或者 delete。C++ 中,所有对象都遵循这一规则。然而在 Objective-C 中,所有对象都是动态分配的。其实这也是符合逻辑的,因为 C++ 更加 static,而 Objective-C 则更加动态。除非能够在运行时动态分配内存,否则 Objective-C 实现不了这么多动态的特性。构造函数和初始化函数分配allocation和初始化initia
阅读全文