随笔分类 -  iOS开发

摘要:Objective-C语法之KVC使用除了一般的赋值和取值的方法,我们还可以用Key-Value-Coding(KVC)键值编码来访问你要存取的类的属性。下图来自苹果官网:如何使用KVC存取对象属性呢?看个示例1、使用KVC定义一个Student类,继承于NSObject。.h文件#import <Foundation/Foundation.h>@interface Student : NSObject{ NSString *name;}@end.m文件#import "Student.h"@implementation Student@end.m文件也没有实现 阅读全文
posted @ 2012-08-06 11:49 酱酱爱 阅读(223) 评论(0) 推荐(0)
摘要:[iOS] KVO(NSKeyValueObserving)、KVC(NSKeyValueCoding)作用浅谈 在很多时候接触到很多地方都有对KVC,KVO的描述,但是都是一笔带过。只知道这是Object-C提供的一个不错的机制,可以很好的减少浇水代码。 其实KVC、KVO即NSKeyValueCoding和NSKeyValueObserving的简称。 在官方文档中描述为 那我们KVO、KVC用来做什么的我们又怎么使用它呢? 首先我们先了解下KVO的机制 KVO:当指定的对象的属性被修改了,允许对象接收到通知的机制。每当在类中定义一个监听 如: [self addObserv... 阅读全文
posted @ 2012-07-19 12:00 酱酱爱 阅读(428) 评论(0) 推荐(0)
摘要:一,概述KVO,即:Key-Value Observing,它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知。简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了。二,使用方法系统框架已经支持KVO,所以程序员在使用的时候非常简单。1. 注册,指定被观察者的属性,2. 实现回调方法3. 移除观察三,实例:假设一个场景,股票的价格显示在当前屏幕上,当股票价格更改的时候,实时显示更新其价格。1.定义DataModel,[cpp]view plaincopy@interfaceStockData:NSObject{NSString*stockName;f 阅读全文
posted @ 2012-07-19 11:41 酱酱爱 阅读(374) 评论(0) 推荐(0)
摘要:方法一:http://developer.apple.com/library/ios/#featuredarticles/iPhoneURLScheme_Reference/Introduction/Introduction.html 方法二:http://forrst.com/posts/UIDevice_Category_For_Processes-h1H 方法三:http://stackoverflow.com/questions/3878197/is-it-possible-to-get-information-about-all-apps-installed-on-iphone/38 阅读全文
posted @ 2012-07-09 11:19 酱酱爱 阅读(1074) 评论(0) 推荐(0)
摘要:1.1 新建一个Single View app模版项目,命名为Localization。1.2 新建后,可以看到工作目录结构文件如下,单击InfoPlist.strings,查看右边的属性,在Localization栏添加语言。 1.3 添加完成后打开对应语言文件,比如English的添加CFBundleDisplayName="China";Chinese文件添加CFBundleDisplayName="中国";运行,如果此时你的模拟器是中文,你会看到你的程序名称变成了 中国:来到设置里把语言设置成 English。此时程序名称变成了:China这时, 阅读全文
posted @ 2012-07-08 23:00 酱酱爱 阅读(21015) 评论(1) 推荐(0)
摘要:原文地址http://www.cimgf.com/2008/02/16/cocoa-tutorial-nsoperation-and-nsoperationqueue/在任何一种语言里,线程都是一个难点,更糟糕的是,如果线程出了问题,往往会以一种非常糟糕的方式出现。因为这个,程序员要么竭力避免线程编程(将线程看作是魔鬼的种子),要么花费大量时间去确保所有线程代码都运行良好。幸运的是,Apple在OS X 10.5 leopard 有了很大的进步。NSThread类添加了很多非常有用的新方法,这些方法都使线程编程变得更加简单。另外,Apple引入了两个新的对象:NSOperation和NSOpe 阅读全文
posted @ 2012-07-06 11:37 酱酱爱 阅读(506) 评论(0) 推荐(0)
摘要:版权声明此文版权归作者Vince Yuan (vince.yuan#gmail.com)所有。欢迎非营利性转载,转载时必须包含原始链接http://vinceyuan.cnblogs.com/,且必须包含此版权声明的完整内容。版本1.1发表于2010-03-08前言初学objectice-C的朋友都有一个困惑,总觉得对objective-C的内存管理机制琢磨不透,程序经常内存泄漏或莫名其妙的崩溃。我在这里总结了自己对objective-C内存管理机制的研究成果和经验,写了这么一个由浅入深的教程。希望对大家有所帮助,也欢迎大家一起探讨。此文涉及的内存管理是针对于继承于NSObject的Class 阅读全文
posted @ 2012-07-05 11:42 酱酱爱 阅读(203) 评论(0) 推荐(0)
摘要:The bounds rectangle, which describes the view’s location and size in its own coordinate system.The frame rectangle, which describes the view’s location and size in its superview’s coordinate system. 阅读全文
posted @ 2012-07-05 11:00 酱酱爱 阅读(175) 评论(0) 推荐(0)
摘要:此文章来源于网络 :http://blog.csdn.net/henry_sea/article/details/6710900核心的应用程序对象-NSApplication、NSWindow、和NSView-都是响应者,它们是NSResponder(参见图6-19)的直接或间接子类的实例。这个抽象类定义了能够响应事件的对象的接口和期望的行为。NSResponder的子类完全或部分实现了这个行为。图6-19NSResponder及其直接子类请注意:还有其它两个Application Kit类直接继承自NSResponder:NSWindowController和NSDrawer。虽然NSWin 阅读全文
posted @ 2012-07-05 10:40 酱酱爱 阅读(879) 评论(0) 推荐(0)
摘要:此文章翻译自苹果官方文档原文地址:http://developer.apple.com/TP30001163-CH12-SW1协议协议负责声明那些可以被任意类所实现的方法。协议应用于至少在以下三种情况:声明那些对象需要实现的方法。为一个对象声明接口来隐藏它的类。抽出那些没有继承关系的类之间的相似之处。声明接口类和接口声明了那些由某一个类联系起来的一些方法——类大部分情况下要实现的一些方法。另一方面,正式和非正式的协议所声明的方法独立于任何一个特定的类,但是任何一个类也许是很多的类都有可能实现。协议只不过是一个方法声明的列表,并不附属于某一个类的定义。例如:这些负责收集用户鼠标动作的方法就可以被 阅读全文
posted @ 2012-07-05 09:32 酱酱爱 阅读(463) 评论(0) 推荐(0)
摘要:此文章翻译自苹果官方文档原文地址:http://developer.apple.com/TP30001163-CH12-SW1选择器在objc中选择符有两个含义。一种是用在代码中向对象发送消息时它代表了一个方法名。另一种是当源代码被编译时选择器会指向一个唯一标识以代替方法名,被编译后的选择器类型为SEL。所有相同名字的方法会有相同的选择器。你可以使用一个选择器来调用一个对象的方法。这个是Cocoa中目标-动作设计模式的基础。方法和选择器出于运行效率的考虑,在编译后的代码中不会使用由ASCII码组成的方法名。编译器会将每个方法名写到一个表中,然后为每个方法名分配一个唯一标识用于在运行时标识一个方 阅读全文
posted @ 2012-07-05 09:17 酱酱爱 阅读(359) 评论(0) 推荐(0)
摘要:此文章翻译自苹果官方文档原文地址:http://developer.apple.com/TP30001163-CH12-SW1分类和扩展分类允许你向一个已有的类添加方法即使你没有这个类的源代码。分类的强大功能就在于它让你可以不使用子类而拓展一个类的功能。使用分类,你还可以将一个类的实现分布在几个不同的文件中。类扩展同分类类似,但是允许在@interface以外的地方为类声明API。给类添加方法你可以在一个类的接口文件中的分类名下为类声明方法,同时在实现文件中相同方法名下实现他们。一个分类名代表了为一个类声明的一些方法而不是一个新类。但是,分类不能为一个类声明新的实例变量。分类添加的方法会成为类 阅读全文
posted @ 2012-07-05 09:15 酱酱爱 阅读(570) 评论(0) 推荐(0)