随笔分类 -  Xcode - objective-c

摘要:Objective C 2.0 为我们提供了property。它大大简化了我们创建数据成员读写函数的过程,更为关键的是它提供了一种更为简洁,易于理解的方式来访问数据成员。我们先来看一下在Objective C 1.x下我们声明Book类的头文件:12345678910111213141516171819202122//// Book.h#import <Cocoa/Cocoa.h>@interface Book : NSObject { NSString *title; NSNumber* numofpages;}- (id)initWithTitle:(NSString*) bo 阅读全文

posted @ 2012-06-29 23:53 无忧consume 阅读(267) 评论(0) 推荐(0) |

摘要:Objective-C是Mac软件开发领域最主要的开发语言,假如我们对面向对象的思维已经C语言都很熟悉的话,对于我们学习Objective-C将会非常有用。假如我们对C语言还不熟悉的话,那我们需要学习一下C语言。方法调用(Calling Methods)为了能够尽快上手,我们先来看一些简单的例子。Objective-C语法里面基本的方法调用是这样的:[objectmethod]; [objectmethodWithInput:input]; 对象的方法可以返回值:output=[objectmethodWithOutput]; output=[objectmethodWithInputAndO 阅读全文

posted @ 2012-06-20 13:20 无忧consume 阅读(271) 评论(0) 推荐(0) |

摘要:xcode 4 debug 每次都跳转到汇编 变量那层。通过设置解决Product -> debug workflow -> show Disassembly when debugging (最下面的那一项) 的勾取消掉就好了. 阅读全文

posted @ 2012-04-18 21:51 无忧consume 阅读(331) 评论(0) 推荐(0) |

摘要:吐血的两小时首先在自己的类中加入@interface Client : NSObject{ NSMutableDictionary *mMHArray;}其次声明其属性@property(retain) NSMutableDictionary *mMHArray;然后在实现中加入@implementation Client@synthesize mMHArray;初始化时候init{ self.mMHArray = [NSMutableDictionarydictionary];//别忘了self}之后就可以正常使用。当然如果在一个里声明创建使用也可以:{ NSMutableDi... 阅读全文

posted @ 2012-04-18 16:40 无忧consume 阅读(185) 评论(0) 推荐(0) |

摘要:修饰符,修饰符控制范围和使用范围 类修饰符:public,protected,private,缺省的访问修符,abstract,final域的修饰符:public,protected,private,static,final,transient,volatile 方法修饰符:public,protected,private,static,final,abstract,native,synchronized类访问修饰符修饰符class类名称[extends父类名称implement接口名称]{成员变量定义;构造函数定义;成员方法定义;}注:访问修饰符与修饰符的位置可以互换类修饰符访问控制修饰符: 阅读全文

posted @ 2012-04-17 01:33 无忧consume 阅读(666) 评论(0) 推荐(0) |

摘要:介绍Xcode是一个强大的专业开发工具,可以简单快速、而且以您熟悉的方式执行绝大多数常见的软件开发任务。相对于创建单一类型的应用程序所需要的能力而言,Xcode要强大得多,它的设计目的是使您可以创建任何想像得到的软件产品类型,从Cocoa及Carbon应用程序,到内核扩展及Spotlight导入器等各种开发任务,Xcode都能完成。Xcode独具特色的用户界面可以帮助您以各种不同的方式来漫游工程中的代码,并且使您可以访问工具箱下面的大量功能,包括GCC,javac,jikes,和GDB,这些功能都是制作软件产品需要的。它是一个由专业人员设计的、又由专业人员使用的工具。由于能力出众,Xcode已 阅读全文

posted @ 2012-04-04 01:56 无忧consume 阅读(252) 评论(0) 推荐(0) |

摘要:第二个iPhone应用程序:“Say Hello”项目需求 写一个iPhone应用程序,要求可以输入名字,点击按钮后,会显示一段文字向输入的名字打招呼,例如输入“宝玉”,显示“你好,宝玉!”需求分析 这是一个很简单的应用程序,包含一个文本输入框,一个文本显示框,一个按钮。输入名字到文本输入框,再点击按钮,这时文本显示框的文字就会变成“你好,<名字>!”。但是要注意,如果用户输入为空,要有警告提示用户重新输入;如果用户输入文字太长,超过16个字符,要自动截断。产品设计 根据项目需求,画出相应的产品原型图:初始状态 初始时,文本输入框为空,但是显示水印,提醒用户可以输入姓名。文本显示框 阅读全文

posted @ 2012-03-19 22:02 无忧consume 阅读(971) 评论(0) 推荐(0) |

摘要:基于Xcode4开发第一个iPhone程序:“Hello World”项目要求 写一个iPhone程序,在屏幕正中显示文字“Hello Word”,粗体,字体大小26磅,字体颜色红色,有黑色阴影,阴影光源为左上角,偏移1像素,支持设备旋转。需求分析在开始之前,我们首先来分析一下项目需求,这是一个非常简单的项目,只要在屏幕上显示一段“Hello World”的文字,当然还有一些附加条件:对字体、字体颜色、字体大小有要求,有阴影效果要求文字显示在屏幕正中支持设备旋转,并且无论设备如何旋转,文字都还是显示在屏幕正中根据这些需求,我们将从简单到复杂,逐步来实现,分成2步来实现:在屏幕上显示文字,设置. 阅读全文

posted @ 2012-03-19 20:40 无忧consume 阅读(222) 评论(0) 推荐(0) |

摘要:pthread_create编辑本段函数简介 pthread_create是UNIX环境创建线程函数头文件 #include<pthread.h>函数声明 int pthread_create(pthread_t*restrict tidp,const pthread_attr_t *restrict_attr,void*(*start_rtn)(void*),void *restrict arg);返回值 若成功则返回0,否则返回出错编号 返回成功时,由tidp指向的内存单元被设置为新创建线程的线程ID。attr参数用于制定各种不同的线程属性。新创建的线程从start_rtn函数 阅读全文

posted @ 2012-03-19 16:51 无忧consume 阅读(463) 评论(0) 推荐(1) |

摘要:http://cpp.ezbty.org/import_doc/linux_manpage/pthread_attr_getdetachstate.3.htmlPTHREAD_ATTR_SETDETACHSTATE名字pthread_attr_setdetachstate, pthread_attr_getdetachstate - 设置/获取线程属性对象的分离状态属性概要#include <pthread.h>int pthread_attr_setdetachstate(pthread_attr_t *attr, int detachstate);int pthread_att 阅读全文

posted @ 2012-03-19 16:45 无忧consume 阅读(952) 评论(0) 推荐(0) |

摘要:多线程之NSOperation1、将想在另外一个线程的工作单独成类,并设置其父类为NSOperation@interface ImageLoadingOperation : NSOperation { //需要传入一个图片地址,所以定义一个NSURL变量 NSURL *imageURL; //由于需要返回一些值,所以需要一个对象参数返回要被返回的对象(运行此线程的类对象) id target; //返回值要激发的方法函数 SEL action;}复制代码2、借由其初始化方法来传入所需要的参数和对象- (id)initWithImageURL:(NSURL *)theImageURL... 阅读全文

posted @ 2012-03-17 00:51 无忧consume 阅读(224) 评论(0) 推荐(0) |

摘要:深入浅出 Cocoa 多线程编程之 block 与 dispatch queneblock 是 Apple 在 GCC 4.2 中扩充的新语法特性,其目的是支持多核并行编程。我们可以将 dispatch_queue 与 block 结合起来使用,方便进行多线程编程。本文源代码下载:StudyBlocks.zip(50.35 KB, 下载次数: 0)1,实验工程准备在 XCode 4.0 中,我们建立一个 Mac OS X Application 类型的 Command Line Tool,在 Type 里面我们选择 Foundation 就好,工程名字暂且为 StudyBlocks.默认生成的 阅读全文

posted @ 2012-03-17 00:50 无忧consume 阅读(298) 评论(0) 推荐(0) |

摘要:http://blog.163.com/prevBlogPerma.do?host=zyc-to&srl=171524002010104680552&mode=prevConvert NSString to int1、NSString*aNumberString =@"123";2、inti = [aNumberString intValue];Convert int to NSStringNSString*boo =[NSString stringWithFormat:@"%@",ln]; 1、intaNumber = 123;2、NS 阅读全文

posted @ 2012-03-15 01:14 无忧consume 阅读(411) 评论(0) 推荐(0) |

摘要:先说这个:NSString*path =[[NSBundle mainBundle] pathForResource:@"LoginStatuses" ofType:@"plist"];不用加inDerectory。你需要在Xcode工程里加入一个group(右键->new group);将文件导入即可不论在哪一个文件夹里。 阅读全文

posted @ 2012-03-15 00:09 无忧consume 阅读(924) 评论(0) 推荐(0) |

摘要:http://alienryderflex.com/NSLock.htmlTo understand why you need NSLock, study this little example:int x=0, y=0 ;// (globals used by all threads)// Spawn this method as a thread (via detachNewThreadSelector)// several times, to get multiple threads running.- (void) renderPixels:(id) dummyObj { int a, 阅读全文

posted @ 2012-03-14 21:49 无忧consume 阅读(275) 评论(0) 推荐(0) |

摘要:NSLock Class ReferenceOverview AnNSLockobject is used to coordinate the operation of multiple threads of execution within the same application. AnNSLockobject can be used to mediate access to an application’s global data or to protect a critical section of code, allowing it to run atomically. Warn.. 阅读全文

posted @ 2012-03-14 21:48 无忧consume 阅读(662) 评论(0) 推荐(0) |

摘要:这里以libcurl 为例: 1.首先需要下载 libcurl http://curl.haxx.se/download.html.解压... 2.打开mac上的 terminal :切换到 解压的libcurl 的目录下... 3.编译配置: export CC=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/arm-apple-darwin10-gcc-4.2.1 export CFLAGS="-isysroot /Developer/Platforms/iPhoneOS.platform/Develope... 阅读全文

posted @ 2012-03-13 23:37 无忧consume 阅读(392) 评论(0) 推荐(0) |

摘要:1. string 转换为 NSString std::string str("hello"); NSString *str=[NSString stringWithString:str.c_str()]; NSString *istr=[NSString stringWithString:@"zsh"]; str=[istr cStringUsingEncoding:NSUTF8StringEncoding]; NSString *path=[[NSBundle mainBundle]pathForResource:@"nokia" 阅读全文

posted @ 2012-03-13 23:36 无忧consume 阅读(281) 评论(0) 推荐(0) |

摘要:error can't allocate region 程序运行报错,在xcode中则会发出“SIGABRT”信号来终止程序。 原因是程序运行内存不足,欲申请空间得不到分配。此时可以查找程序是否出现程序一直申请内存,出现死循环。SIGABRT 程序自己发现错误并调用abort来终止程序。可能是程序没有内存可分配导致,运行终止. The error you have is because malloc can't allocate another 16M block, and THAT is almost certainly because you have either cra 阅读全文

posted @ 2012-03-13 23:34 无忧consume 阅读(965) 评论(0) 推荐(0) |

摘要:1.定义一个MyClass类,和一个TestShow协议:@protocolTestShow;@interfaceMyClass:NSObject<NSCopying>//遵守NSCopying协议{id<TestShow>delegate;}@property(nonatomic,retain)id<TestShow>delegate;@end//自定义代理@protocolTestShow-(void)show;@end2.MyClass类的实现:@implementationMyClass@synthesizedelegate;//overwritei 阅读全文

posted @ 2012-03-13 17:09 无忧consume 阅读(207) 评论(0) 推荐(0) |

博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3