Fork me on GitHub

2012年2月16日

摘要: 程序中一个界面用到了好多张大图,内存报警告了,所以做了一下图片缩放,在网上找了别人写的代码//把图片做等比缩放,生成一个新图片 1 - (UIImage *) imageByScalingProportionallyToSize:(CGSize)targetSize sourceImage:(UIImage *)sourceImage { 2 3 UIGraphicsBeginImageContext(targetSize); 4 [sourceImage drawInRect:CGRectMake(0, 0, targetSize.width, targetSize... 阅读全文
posted @ 2012-02-16 22:38 pengyingh 阅读(2849) 评论(0) 推荐(0)
摘要: 如题,是不是大家为了方便都这样加载图片啊myImage = [UIImage imageNamed:@"icon.png"];那么小心了这种方法在一些图片很少,或者图片很小的程序里是ok的。但是,在大量加载图片的程序里,请千万不要这样做。为什么呢 ???????这种方法在application bundle的顶层文件夹寻找由供应的名字的图象 。 如果找到图片,装载到iPhone系统缓存图象。那意味图片是(理论上)放在内存里作为cache的。试想你图片多了,是什么后果``````图片cache极有可能不会响应 memory warnings and release its o 阅读全文
posted @ 2012-02-16 22:26 pengyingh 阅读(21253) 评论(3) 推荐(1)
摘要: http://www.iloss.me/?p=878UIRequiresPersistentWiFi 在程序中弹出wifi选择的key(系统设置中需要将wifi提示打开)UIAppFonts 内嵌字体UIApplicationExitsOnSuspend 程序是否在后台运行,自己在进入后台的时候exit(0)是很傻的办法UIBackgroundModes 后台运行时的服务,具体看iOS4的后台介绍UIDeviceFamily array类型(1为iPhone和iPod touch设备,2为iPad)UIFileSharingEnabled 开启itunes共享document文件夹UILaun 阅读全文
posted @ 2012-02-16 22:18 pengyingh 阅读(381) 评论(0) 推荐(0)
摘要: UIViewController* transparentView = [[UIViewController alloc] init];UIViewController* controller = self.view.window.rootViewController;transparentView.view.backgroundColor = [UIColor blackColor];transparentView.view.alpha = 0.5f;controller.modalPresentationStyle = UIModalPresentationCurrentContext;[ 阅读全文
posted @ 2012-02-16 22:15 pengyingh 阅读(1166) 评论(0) 推荐(0)
摘要: 有时候我们看到一个App,想看看他的一些界面是如何实现的,这个时候需要查看一下它的图片资源,不过iOS的png图片编译后一般的图片阅读器都是没法查看的,本文将告诉的原因和转换出原图的方法(得安装XCode)。ipa 解压,将png相关文件夹拷贝出来,在命令行下使用/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/pngcrush -revert-iphone-optimizations xxx.png yyy.png我们都知道一个编译好的iPhone app 其中的png图片一般普通的图片阅读器是无法直接读取的,这是因为XCode 阅读全文
posted @ 2012-02-16 22:02 pengyingh 阅读(4473) 评论(0) 推荐(0)
摘要: 之前说过GCD中的serial queue是FIFO的执行次序,也就是说你依次添加进queue的任务会按照先后顺序执行完毕.最近在做一个关于iCloud的项目,在更新文件夹内容变化的时候用到了serial queue,处理逻辑如下:- (void)presentedSubitemDidChangeAtURL:(NSURL *)url{ NSDate *currentDate = [NSDate date]; myQueue = NULL; if (myQueue == NULL) { myQueue = dispatch_queue_create([[c... 阅读全文
posted @ 2012-02-16 21:58 pengyingh 阅读(261) 评论(0) 推荐(0)
摘要: rowid和 Integer主键及自增属性大多数情况下,sqlite3的表都有一个rowid(也叫oid,_rowid_),这是一个64位的整数,并作为sqlite存储结构B树的主键.因此使用rowid查询会比以其他设定的主键查询,速度会非常快.在做插入操作的时候,对于rowid的值通常情况下不要去指定,让系统自己去决定该去何值。因为sqlite会通过SQLITE_SEQUENCE来追踪表的rowid取值情况.而且sqlite定义了rowid的取值算法:在未超出rowid的范围内,待插入记录的rowid总是表中存在过的的rowid最大值+1。比如依次插入5条记录,此时最后一条记录的rowid是 阅读全文
posted @ 2012-02-16 21:54 pengyingh 阅读(2227) 评论(0) 推荐(0)
摘要: UITextField是我们经常用的之一但是常用的属性都很熟悉,有些不常用的我也总结下,例如下面的:UIImageView * myView = [[ UIImageView alloc]initWithImage:[UIImage imageNamed:@"face.png"]];UIImageView * myView2 = [[ UIImageView alloc]initWithImage:[UIImage imageNamed:@"face.png"]];UITextField *myTextField=[[UITextField alloc] 阅读全文
posted @ 2012-02-16 21:39 pengyingh 阅读(519) 评论(0) 推荐(0)
摘要: 与CFLocale自由转换.可以通过注册NSCurrentLocaleDidChangeNotification通知来获得区域位置改变消息生成–initWithLocaleIdentifier:+systemLocale//操作系统的,最初始的区域?+currentLocale//当前用户设定区域,肯能是缓存的+autoupdatingCurrentLocale//当前用户的系统区域设置,实时更新的信息–displayNameForKey:value: /* 某种locale中对指定区域中指定属性的显示值。并不是所有的属性都有显示值。 举例:NSLocale *frLocale = [[... 阅读全文
posted @ 2012-02-16 21:27 pengyingh 阅读(4140) 评论(0) 推荐(1)
摘要: Ios4已经直接支持blocks,很有必要学习一下。在ios,blocks是对象,它封装了一段代码,这段代码可以在任何时候执行。Blocks可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值。它和传统的函数指针很类似,但是有区别:blocks是inline的,并且它对局部变量是只读的。Blocks的定义:int(^Multiply)(int,int) = ^(intnum1,intnum2) {returnnum1 * num2;};定义了一个Multiply的blocks对象,它带有两个int参数,返回int。等式右边就是blocks的具体实现,注意{}blocks体里的;。 阅读全文
posted @ 2012-02-16 19:38 pengyingh 阅读(199) 评论(0) 推荐(0)
摘要: http://www.cnblogs.com/scorpiozj/archive/2011/06/27/2091259.html做iphone的,UINavigationController+UItableViewController组合的应用是必须会的,那么我们必须学习下如何使用320来实现此类应用。考虑这样的需求:点击tableview上的feed行就从apple store上获取排名前10的专辑信息,链接:http://itunes.apple.com/us/rss/topalbums/limit=10/explicit=true/xml. 具体流程:程序启动后是一tableview(图 阅读全文
posted @ 2012-02-16 19:34 pengyingh 阅读(402) 评论(0) 推荐(0)
摘要: http://www.cnblogs.com/scorpiozj/archive/2011/06/26/2090889.html学习并使用KVO有段时间了,在之前也简单的介绍了KVO机制,这种机制提供了监听某些类属性变化的机制.在MVC中,简单的说,通过监听M的变化,可以及时更新V.因为监听属性明确,当有变化时就直接传递到观察者.考虑这样一种情况:请求某网站的rss,并将内容解析出来在tableview中显示出来.因为网络请求以及数据解析需要时间,如果我们把获得的全部数据解析后再显示出来,在用户体验上就会非常不好:用户启动程序后,风火轮可能需要转很久,然后突然就冒出来一大堆的数据.改进的方法之 阅读全文
posted @ 2012-02-16 19:26 pengyingh 阅读(2909) 评论(0) 推荐(0)
摘要: 虽然很早就知道Three20这个强大的库,可是一直没有学习怎么用。个人觉得学习最好的方式之一就是记笔记,一来方便以后的温故,二来也可以让人“挑刺”达到交流的目的。最后么,希望通过blog这个平台,可以监督自己的学习进程。20110517学习的时候首先关注了TTCore(看到了core,所以就先从这个下手了)中对cocoa类的category。比如说NSString,就有判断空格换行,解析url请求,生成MD5等等。还有NSDate,有很多格式化时间输出字符串的方法,都很实用。这些category都很容易看懂,使用时从名字能方便的看出效果。在这些方法中,有个函数比较陌生,我把注释一并写在下面。- 阅读全文
posted @ 2012-02-16 19:24 pengyingh 阅读(619) 评论(0) 推荐(0)
摘要: http://www.keakon.net/2011/06/26/开发iOS平台的猜数游戏这些天终于戒掉了星际争霸2,开始学习iOS开发了。虽然还只是一知半解,但学了几天后,觉得单视图的iOS应用开发起来太轻松了,就忍不住想自己动手做点小玩意。我也没有什么好的创意,只是偶然看到猜数的游戏,觉得用选取器这个控件很适合,就决定做了。虽然这个游戏大多数人都玩过,不过我还是介绍下规则吧:裁判从1到100以内随机选择一个整数,然后让玩家猜测选择的是什么数。每次猜测后,如果猜错了,裁判会告诉玩家是猜大了还是猜小了,直到玩家猜出来。当然,用的次数越少就越好。如果用二分法的话,7次以内肯定能猜出来的。而我要做 阅读全文
posted @ 2012-02-16 18:46 pengyingh 阅读(582) 评论(0) 推荐(0)
摘要: 最近在做一个UITableView的例子,发现滚动时的性能还不错。但来回滚动时,第一次显示的图像不如再次显示的图像流畅,出现前会有稍许的停顿感。于是我猜想显示过的图像肯定是被缓存起来了,查了下文档后发现果然如此。后来在《Improving Image Drawing Performance on iOS》一文中找到了一些提示:原来在显示图像时,解压和重采样会消耗很多CPU时间;而如果预先在一个bitmap context里画出图像,再缓存这个图像,就能省去这些繁重的工作了。接着我就写了个例子程序来验证:// ImageView.h#import <UIKit/UIKit.h>@in 阅读全文
posted @ 2012-02-16 18:32 pengyingh 阅读(1990) 评论(0) 推荐(1)
摘要: 在iOS应用中,UITableView应该是使用率最高的视图之一了。iPod、时钟、日历、备忘录、Mail、天气、照片、电话、短信、Safari、App Store、iTunes、Game Center⋯几乎所有自带的应用中都能看到它的身影,可见它的重要性。然而在使用第三方应用时,却经常遇到性能上的问题,普遍表现在滚动时比较卡,特别是table cell中包含图片的情况时。实际上只要针对性地优化一下,这种问题就不会有了。有兴趣的可以看看LazyTableImages这个官方的例子程序,虽然也要从网上下载图片并显示,但滚动时丝毫不卡。下面就说说我对UITableView的了解。不过由于我也是初学 阅读全文
posted @ 2012-02-16 18:22 pengyingh 阅读(9737) 评论(1) 推荐(0)
摘要: 各种语言都有些传递函数的方法:C语言中可以使用函数指针,C++中有函数引用、仿函数和lambda,Objective-C里也有选择器(selector)和block。不过由于iOS SDK中的大部分API都是selector的方式,所以本文就重点讲述selector了。Objective-C和我接触过的其他面向对象的语言不同,它强调消息传递,而非方法调用。因此你可以对一个对象传递任何消息,而不需要在编译期声名这些消息的处理方法。很显然,既然编译期并不能确定方法的地址,那么运行期就需要自行定位了。而Objective-C runtime就是通过“id objc_msgSend(id theRec 阅读全文
posted @ 2012-02-16 18:19 pengyingh 阅读(4142) 评论(0) 推荐(1)
摘要: http://www.keakon.net/2011/08/05/让ASIHTTPRequest不占用主线程ASIHTTPRequest是个很易用的iOS / Mac OS X平台的HTTP库,比NSURLRequest好用多了,所以我一直在用它。不过使用中我发现,当下载线程数超过2时,就会影响到主线程响应用户请求的速度了。好奇之余我测试了一下completionBlock,发现它总是在主线程调用,而NSOperation的文档中却说一般会在子线程中执行。于是看了下ASIHTTPRequest.m,终于发现问题所在了:// Subclasses might override this meth 阅读全文
posted @ 2012-02-16 18:13 pengyingh 阅读(201) 评论(0) 推荐(0)
摘要: http://www.keakon.net/2011/08/13/用CommonCrypto计算MD5和SHA编程时经常需要和MD5、SHA等hash算法打交道,搜了一下后我发现iOS SDK中自带了CommonCrypto,于是就无需自己实现或用第三方库了。首先来看MD5,它的输出结果是128位的,因此需要16个8位的char来存储。而输入参数我就直接用const char *了,反正NSString和NSData都能与它相互转换:#include <CommonCrypto/CommonDigest.h>static inline char hexChar(unsigned c 阅读全文
posted @ 2012-02-16 18:08 pengyingh 阅读(302) 评论(0) 推荐(0)
摘要: 【IT168技术】在前文《深入浅出Cocoa之类与对象》一文中,我已经详细介绍了ObjC中的 Class 与 Object 的概念,今天我们来如何在运行时动态创建类。下面这个函数就是应用前面讲到的Class,MetaClass的概念,在运行时动态创建一个类。这个函数来自《Inside Mac OS X-The Objective-C Programming Language》。#import<objc/objc.h>#import<objc/runtime.h>BOOL CreateClassDefinition(constchar*name,constchar*sup 阅读全文
posted @ 2012-02-16 15:54 pengyingh 阅读(2059) 评论(0) 推荐(0)
摘要: 方法一:-(void) viewDidLoad{[self performSelectorInBackground:@selector(call1) withObject:nil]; }-(void) call1{timer1 = [NSTimer scheduledTimerWithTimeInterval:3.0 target:self selector:@selector(doSomething) userInfo:nil repeats:NO]; [[NSRunLoop currentRunLoop] addTimer:timer1 forMode:NSRunLoopCommonMod 阅读全文
posted @ 2012-02-16 15:52 pengyingh 阅读(252) 评论(0) 推荐(0)
摘要: 第一种方式.New Project -> IOS Library ->Cocoa touch Static Library 这样就新建了一个静态库的工程,将你要打包成lib的.m,.h放到class目录下面,然后build就可以了. 打包的时候要分清楚是debug,release.第二种方式1.在工程的Targets上右键.Add -> New Target ->Static Library 比如我们建了一个example的target2.将你要打包的.m.h放到自己新建的文件夹里面.一个一个的选中.m.h,然后右键Get Info,Taggets.选择example, 阅读全文
posted @ 2012-02-16 15:44 pengyingh 阅读(133) 评论(0) 推荐(0)
摘要: NSURLRequest*request =[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com/"]];NSURLConnection*connection =[NSURLConnection connectionWithRequest:request delegate:self];-(void)connection:(NSURLConnection*)connection didReceiveResponse:(NSURLResponse*)response{ NSHTTPUR 阅读全文
posted @ 2012-02-16 15:38 pengyingh 阅读(878) 评论(0) 推荐(0)
摘要: 原文地址:http://blog.csdn.net/ikmb/article/details/6716831一 objective-c调用jsNSString*currentURL=[webViewstringByEvaluatingJavaScriptFromString:@"document.location.href"];//注:webView是UIWebView实例二 js调用objective-c1.obj-c部分-(void)viewDidLoad{[superviewDidLoad];self.myWebView.delegate=self;}//------ 阅读全文
posted @ 2012-02-16 15:31 pengyingh 阅读(2495) 评论(0) 推荐(0)
摘要: NSLog(@"Hello, World!"); NSDictionary *myDic=[[NSDictionary alloc]initWithObjectsAndKeys:@"张三",@"name",@"李四",@"name", nil]; NSUInteger count = [myDic count]; NSLog(@"词典的数量为: %lu",count); NSEnumerator * myEnumerator = [myDic keyEnumerator]; 阅读全文
posted @ 2012-02-16 15:18 pengyingh 阅读(6556) 评论(0) 推荐(0)
摘要: 格式化日期字符串,copy一份常用参数:a: AM/PM (上午/下午)A: 0~86399999 (一天的第A微秒)c/cc: 1~7 (一周的第一天, 周天为1)ccc: Sun/Mon/Tue/Wed/Thu/Fri/Sat (星期几简写)cccc: Sunday/Monday/Tuesday/Wednesday/Thursday/Friday/Saturday (星期几全拼)d: 1~31 (月份的第几天, 带0)D: 1~366 (年份的第几天,带0)e: 1~7 (一周的第几天, 带0)E~EEE: Sun/Mon/Tue/Wed/Thu/Fri/Sat (星期几简写)EEEE: 阅读全文
posted @ 2012-02-16 15:07 pengyingh 阅读(3802) 评论(0) 推荐(0)
摘要: 如果视图的autoresizesSubviews属性声明被设置为YES,则其子视图会根据autoresizingMask属性的值自动进行尺寸调整。简单配置一下视图的自动尺寸调整掩码常常就能使应用程序得到合适的行为;否则,应用程序就必须通过重载layoutSubviews方法来提供自己的实现。 self.autoresizingMask = UIViewAutoresizingFlexibleWidth;//这个常量如果被设置,视图的宽度将和父视图的宽度一起成比例变化。否则,视图的宽度将保持不变。 UIViewAutoresizingNone这个常量如果被设置,视图将不进行自动尺寸调整。... 阅读全文
posted @ 2012-02-16 15:06 pengyingh 阅读(2285) 评论(0) 推荐(0)
摘要: 从远程下载图片到UIImage,然后再180度转换图片 1 #import <Foundation/Foundation.h> 2 #define TIMEOUT_SEC 20.0 3 4 @interface TSHttpClient : NSObject { 5 NSURLConnection *connection; 6 NSMutableData *recievedData; 7 int statusCode; 8 BOOL contentTypeIsXml; 9 10 int rate_limit;11 ... 阅读全文
posted @ 2012-02-16 15:03 pengyingh 阅读(771) 评论(0) 推荐(0)
摘要: ASIHTTPRequest用法不多介绍,网上一堆,实例如图1 #import <UIKit/UIKit.h>2 #import "MainView.h"3 4 @interface AppDelegate : UIResponder <UIApplicationDelegate>5 6 @property (strong, nonatomic) UIWindow *window;7 @property (strong, retain) MainView *viewController;8 9 @end复制代码 1 - (void)dealloc 2 阅读全文
posted @ 2012-02-16 14:44 pengyingh 阅读(1553) 评论(0) 推荐(0)
摘要: 网页上面常用的Jquery广告控件(slideshow)是通过div+jquery来实现,ios上面实现主要通过UIPageControl+UIScrollView来结合实现,效果如下图:源码如下:1 #import <Foundation/Foundation.h>2 @class SlideView;3 4 @protocol SlideScrollDelegate <NSObject>5 6 -(void)slideshowDidChangeCurrentView:(SlideView *)slideview CurrentPage:(int) currentPa 阅读全文
posted @ 2012-02-16 14:42 pengyingh 阅读(195) 评论(0) 推荐(0)
摘要: http://www.iloss.me/?p=545协议分非正式协议和正式协议先说说非正式协议非正式协议在Obj-c中关键字虽然是interface,但是这个和C#中的借口并不完全相同。回忆之前学过的内容,我们定义一个类Sample时,会生成一个Sample.h,代码如下:#import <foundation foundation.h>@interface Sample:NSObject {}-(void) HelloWorld;@end它表明Sample类中,约定了应该有一个名为HelloWorld的方法(注:这里说的时应该,而不是必须)它只是一种君子协议。如果我们在Sampl 阅读全文
posted @ 2012-02-16 13:58 pengyingh 阅读(182) 评论(0) 推荐(0)
摘要: 1 #import <Foundation/Foundation.h> 2 3 typedef enum { 4 item = 0 , 5 image = 1 , 6 avatar = 2 7 } sandboxItemtype; 8 9 10 @interface UpdateManager : NSObject {11 sandboxItemtype _itemType;//存储信息类型,暂时没用上12 NSString *_filePath;//记录更新日志存储路径13 NSString *_timePath;14 NSStr... 阅读全文
posted @ 2012-02-16 13:52 pengyingh 阅读(552) 评论(0) 推荐(0)
摘要: http://www.iloss.me/?p=944直接贴代码了:- (CGAffineTransform)transformForOrientation { UIInterfaceOrientation orientation = [UIApplication sharedApplication].statusBarOrientation; if (UIInterfaceOrientationLandscapeLeft == orientation) { return CGAffineTransformMakeRotation(M_PI*1.5); } else if (UIInterfa. 阅读全文
posted @ 2012-02-16 09:22 pengyingh 阅读(4992) 评论(0) 推荐(0)
摘要: 本文转自:http://www.wangdg.com/?p=597 代码如下:#include <sys/param.h> #include <sys/mount.h>long long freeSpace() { struct statfs buf; long long freespace = -1; if(statfs("/", &amp;buf) &gt;= 0){ freespace = (long long)buf.f_bsize * buf.f_bfree; } return freespace;}+(float)getT 阅读全文
posted @ 2012-02-16 09:15 pengyingh 阅读(1413) 评论(0) 推荐(0)
摘要: 文章转自:http://www.wangdg.com/?p=482#import <mach/mach.h>#import <mach/mach_host.h>static void print_free_memory () { mach_port_t host_port; mach_msg_type_number_t host_size; vm_size_t pagesize; host_port = mach_host_self(); host_size = sizeof(vm_statistics_data_t) / sizeof(integer_t); ... 阅读全文
posted @ 2012-02-16 09:14 pengyingh 阅读(446) 评论(0) 推荐(0)
摘要: NSString*artist=@"王杰";NSString*song=@"什么时候才能够";转换后Artist=8B737067&Title=C04E484EF66519504D62FD801F59算法-(NSString*)toUnichar:(NSString*)src{ NSMutableString*arX=[NSMutableStringstring]; for(inti =0; i<[srclength]; i++) { unicharch= [srccharacterAtIndex:i]; unicharb = ((((un 阅读全文
posted @ 2012-02-16 09:13 pengyingh 阅读(1062) 评论(0) 推荐(0)
摘要: Objective-C学习笔记之获取私有变量的值是本文要介绍的内容,主要讲述了如何获取私有变量的值,来看本文详细内容。1、下面是自己定义的一个类,里面有一个私有变量mt_,并且在初始化值为"Ha Ha Ha"。@interfaceMobj:NSObject{ @private NSString*mt_; } @end @implementationMobj -(id)init{ self=[superinit]; if(self){ mt_=[[NSStringalloc]initWithString:@"HaHaHa"]; } returnself; 阅读全文
posted @ 2012-02-16 08:28 pengyingh 阅读(2426) 评论(0) 推荐(0)
摘要: 关于变量的作用域@protected—Methods defined in the class and any subclasses can directly access the instance variables that follow.This is the default case.该类和所有的子类中的方法可以直接访问这样的变量,这是默认的。@private—Methods defined in the class can directly access the instance variables that follow, but subclasses cannot.该类中的方法可 阅读全文
posted @ 2012-02-16 08:21 pengyingh 阅读(1080) 评论(0) 推荐(0)
摘要: 去除username中的空格,table newline,nextline代码如下:(三行代码)NSCharacterSet *whitespace = [NSCharacterSetwhitespaceAndNewlineCharacterSet];NSString *username= [mUsernameField stringValue];username = [usernamestringByTrimmingCharactersInSet:whitespace];注释:stringByTrimmingCharactersInSet:Returns a new string made 阅读全文
posted @ 2012-02-16 08:00 pengyingh 阅读(4481) 评论(0) 推荐(0)
摘要: 在所有的移动开发平台数据持久化都是很重要的部分:在j2me中是rms或保存在应用程序的目录中,在symbian中可以保存在相应的磁盘目录中和数据库中。symbian中因为权限认证的原因,在3rd上大多数只能访问应用程序的private目录或其它系统共享目录。在iphone中,apple博采众长,提供了多种数据持久化的方法,下面笔者会逐个进行详细的讲解。iphone提供的数据持久化的方法,从数据保存的方式上讲可以分为三大部分:属性列表、对象归档、嵌入式数据库(SQLite3)、其他方法。一、属性列表NSUserDefaultsNSUserDefaults类的使用和NSKeyedArchiver有 阅读全文
posted @ 2012-02-16 07:57 pengyingh 阅读(335) 评论(0) 推荐(0)
摘要: 【IT168技术】最近打算写一些ObjC中比较底层的东西,尤其是 runtime 相关的。苹果已经将 ObjC runtime 代码开源了,我们可以从:http://opensource.apple.com/source/objc4/objc4-493.9/runtime/ 浏览源代码,或点此下载源代码。 从哪里入手呢?那当然是最基本的类与对象。与C++相比,ObjC中的类与对象结构要简洁与一致得多(参考《深度探索C++对象模型》,你就知道C++中类与对象结构的复杂)。本文将详细讲解ObjC中类与对象的结构,下回将讲如何在 runtime 时操作类。 我们可以在/usr/include/o.. 阅读全文
posted @ 2012-02-16 07:30 pengyingh 阅读(196) 评论(0) 推荐(0)
摘要: http://3426724.blog.51cto.com/3416724/6967231.@public,@protected,@private个人觉得@public和@protected并没有很明确的区别,在他们作用范围内的对象,如果不将对象设置成@property,则该对象相当于 protected对象,只有子类和本身可以访问该对象;如果将对象设置成@property,则可以使使用者访问该对象。@private,顾名思义, 这里声明的就是私有对象注:可以通过指针的方式访问。2.static对象(类内)我们将对象声明在类中"{"和"}"之外,也就是与 阅读全文
posted @ 2012-02-16 07:29 pengyingh 阅读(1271) 评论(0) 推荐(0)

导航