- 博客(56)
- 资源 (10)
- 收藏
- 关注
原创 iphone开发一些好的网站推荐
1、http://developer.apple.com/iphone/library这个是官方的代码实例 2、www.cocoachina.com这个网站比较适合初期开发者,上面的版主之类的也比较热心,一般的问题都会提供帮助 3、
2011-08-03 10:21:33
13268
原创 为类添加实例变量 (Associative References)
在object-c中我们知道可以使用categories来为扩展类方法(比如我们可以为系统的类添加自己的方法)例如:我们要想在每个NSString前面添加一个@interface NSString ( CategoryName )// method declarations- (
2011-07-30 10:12:28
5954
原创 程序在低于3gs以下崩溃 原因解析和程序调用过程
现象描述:程序起来直接崩溃 错误log信息: 错误原因:引入的库的编译版本的选项和工程的不一致 比如编译选项1 和 编译选项2上面选择编译的选项不一致导致 选择standar armv6指令编译的程序支持 3gs硬件以下的版本 但是库选择 optimized(armv7)编译的库在工程中编译生成的可执行程序 只支持在 3gs以上的硬件版本(因
2011-06-17 20:49:00
4097
2
原创 iphone push notification 消息推送
首先声明下写这个文章的目的,就是让更多人更好的了解push notificaiton 苹果的消息推送功能。(虽然网上有很多类似的文章说明,但是当自己实践起来的时候还是觉得花费了不少的时间) 在文章之前先提及以下几个概念 对照如上图我们介绍文章后面的一些概念1、Provider: 就是对应后面介绍的 PushMeBaby工程(用来向APNS发送消息) 2、APNS:
2011-04-12 00:01:00
18976
4
原创 ipad,iphone 屏幕旋转支持
最近做ipad项目,遇到不少屏幕转屏发生的错误现象。(其中有些还是自己编码时的疏忽和不规范导致的)那以下就是总结一些做支持旋转的时候的一些思路和碰到的问题时如何解决的。首先描述 下工程的大体的一个结构特征。工程是以UISplitViewController 为依托,然后它的viewControllers分别是 UITabBarController 和 UINavigationController。其中UITabBarController里面的viewControllers又分别是一个个UINaviga
2011-03-14 23:21:00
9473
转载 HTML5 应用现状与前景的思考
现在的 HTML5 就像当年崭露头角时的 Ajax,有人在做,但不知道叫它什么。最近,苹果在 HTML5 上大做文章 ,而著名的 Web 设计师 Eric Meyer 则提出了 Web Stacks 的概念。Alex Kessinger 是 Yahoo 的一名前端工程师,本文是他对 HTML5 应用现状与前景的思考。术语首先说说 HTML5 应用中的几个定义。HTML5HTML5 最好的定义来自 Mark Pilgrim 的 Dive Into HTML5 :"HTML5 是继 HTML4.01,XHTML
2011-02-09 17:16:00
3473
原创 iphone程序启动互相调用
<br />如何点击一个程序调用起来另一个程序的方法<br />调用程序A 被调用程序 B <br />A中要设置一些调用的信息<br />- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { <br /> [self performSelector:@selector(launchMe) withObject:nil afte
2011-01-13 21:10:00
5277
2
翻译 SDK兼容性引导
<br />基于SDK基础的开发<br />介绍说明如何应用于XCode工程的基于SDK开发的技术<br />1、用(weakly linked)弱连接类、方法和函数来支持在不同版本之间的程序运行<br />2、弱连接整个框架(framework)<br />3、为不同的SDK选择不同的编译条件<br />4、在代码中找出过时API的使用<br />5、确定在运行时操作系统和框架(framework)的版本<br /><br />一 、在IOS中使用弱连接类<br /><br />在工程中使用类的弱连接的时
2010-12-12 20:33:00
4262
原创 ipad开发开发之区别于iphone
http://developer.apple.com/library/ios/#releasenotes/General/iPhone32APIDiffs/index.htmliOS 3.1 to iOS 3.2 API Differences其中包含了ipad等相关说明iOS 3.2 API DiffsDocument that lists new and changed API from iOS 3.1 to iOS 3.2.
2010-11-06 00:45:00
15587
原创 NSError code错误列表信息(NSFileManage、NSURL...)
官网地址:http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Miscellaneous/Foundation_Constants/Reference/reference.html其实每个FrameWork的Constants都有相关性的define值Foundation Constants ReferenceNSError CodesNSError codes in the Cocoa error
2010-11-02 23:31:00
39599
原创 一个好产品如何慢慢变坏
<br />(先声明下以下的所以观点言论只是个人闲着无聊发发牢骚而已,不针对任何人和公司)<br /> <br />为什么突然想在此牢骚下了?<br />因为感觉自己正在做的产品正在慢慢的变坏(不免心里有点替它感到惋惜),而且是可能是到后面发觉的时候已经来不及<br />挽回用户对这个XXX产品的认可了。(因为自己在公司说难听点什么都不是,意见有时候讲了但是上头有时候会考虑吗?<br />毕竟还是老板一句话的问题)<br />XXX产品在做的时候的定位和用户需求其实都是很好的,再说那时候也是我们XX公司在国
2010-10-24 21:56:00
2958
原创 低版本编译兼容高版本版本
<br /><br />之前做过高版本兼容低版本操作,所以今天打算在低版本上面编译支持高版本的时候就想依葫画瓢。<br /> <br />方法:<br />在XCode左面的Groups & Files中依次展开Targets, <YourApp>, Link Binary With Libraries,注意,不要点任何一个framework,<br />而是,选中他们的父节点“Link Binary With Libraries”,这时候,你会在右上方的列表中发现有一列叫“Role”,把你需要Weak l
2010-10-18 20:59:00
4547
转载 浅谈Blocks--iphone上的使用
在上次的Snow Leopard tech review摘要中提到,Snow Leopard(实际上是Xcode 3.2附带的编译器)开始支持Blocks。这是一个非常有意思的功能,以前通常只有一些动态语言支持,而现在,C/C++/Objective-C也可以用上这个功能了。Block, 简单的说,就是一个函数对象,和其它类型的对象一样,你可以创建它,可以赋给一个变量,也可以作为函数的参数来传递。计算机科学中,更常用的名字是”closure”或者”lambda”。先通过一个例子看看什么是Block:12
2010-10-14 10:41:00
3854
原创 KVO(NSKeyValueObserving)、KVC(NSKeyValueCoding)作用浅谈
在很多时候接触到很多地方都有对KVC,KVO的描述,但是都是一笔带过.只知道这是Object-C提供的一个不错的机制,可以很好的减少浇水代码。其实KVC、KVO即NSKeyValueCoding和NSKeyValueCoding的简称。在官方文档中描述为那我们KVO、KVC用来做什么的我们又怎么使用它呢?首先我们先了解下KVO的机制KVO:当指定的对象的属性被修改了,允许对象接收到通知的机制。每当在类中定义一个监听如:[self addObserver:self forKeyPath:@"items"
2010-10-12 21:49:00
6774
原创 Linux find命令使用方法
在linux中查询文件的命令find,可以快速的帮助我们找到想要的文件信息----前提当然是我们应该正确的使用find的相关命令。 名称 : find 用法 : find 使用说明 : 将档案系统内符合 expression 的档案列出来。你可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。比如在根目录 / 底下查找名称为 AA的文件即:find / -name AA当然我们还可以部分查找如含有AA的文件名称则find / -name '*AA*'以AA开
2010-10-09 00:45:00
5336
原创 动态获取字符串 NSString的长宽--------自适应文本宽度、高度
<br />其实动态获取字符串NSString的CGSize的大小最主要的还是API NSString类提供的一个方法<br />sizeWithFont: constrainedToSize<br /> <br />例如:<br /><br /> CGSize feelSize = [feeling sizeWithFont:[UIFont systemFontOfSize:12] constrainedToSize:CGSizeMake(190,200)];<br /> float feelHeigh
2010-10-07 20:46:00
10231
转载 偷窥iPhone Push Notification的幕后
iPhone Push Notification,一个吹得天花乱坠,却又不断跳票的功能,终于在OS3.0上实现。虽然体验糟糕(Tweetie和IM+之间反复切换,每次都需要等待这两个软件加载数据,这种脑残的使用方式能代替多任务?),但是我终于可以在使用Tweetie的同时,挂着MSN了。既然BB,Nokia,Palm都先后支持了Push,那么它们之间的比较不可避免。Handspring兄有一篇文章详尽的分析了现有Push方式和他们的优缺点。不清楚苹果的Push方式,就让我们很难把iPhone Push No
2010-10-06 23:18:00
5699
2
转载 手机Push方案之比较
<br />关于Pushmail那些事儿<br />handspring<br /><br />有什么推送方案?<br />Pushmail的意义在于,客户端不再是定时或手动发起收取邮件的动作,而是通过服务器的新邮件通知来触发收取邮件这一行为。<br />在我们常用的公司局域网或固网宽带上,这一创新的意义并不大,因为流量多数都是按月来收取,带宽也不是什么问题,但是相反在移动网络中,流量的资费以及带宽的限制,使得这一方式赢得了移动用户的欢心。<br />Pushmail采用的通知协议主要有两种,一种是通过短信
2010-10-06 23:15:00
5115
原创 iPhone 代码签名 (code signing) 以及解析、屏蔽
iphone代码签名iphone 2.0 firmware 需要CHECK每个应用程序的签名,如果不通过,就会自动KILL.由于校验机制做到了内核中很多地方,简单的给内核打补丁很难解决. 1. codesign利用apple sdk的工具进行self-signmac$ export CODESIGN_ALLOCATE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate mac$ codesign -fs "Ce
2010-10-06 22:37:00
19866
原创 iphone web页面显示和源码请求
<br /> <br /> <br />在iphone 上面显示显示页面我们知道有两种方法<br />1、同步显示<br />就是在webView请求url的时候一次性读取页面信息并且显示出来<br />这中的实现也是最简单的<br />[self.myWebView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com"]]];<br />这样就可以显示出google的主页面了<br />
2010-09-27 22:32:00
2151
原创 iphone动态加载图片
<br /> <br />官方的例子(支持3.x以上的机子)<br />http://developer.apple.com/library/ios/#samplecode/LazyTableImages/Introduction/Intro.html<br /> <br />其实在iphone上面是实现图片的动态加载,其实也不是很难,其中只要在代理中实现方法就可以<br />首先在头文件中声明使用到的代理 如 <br />@interface XXX : UIViewController<UIScrol
2010-09-25 17:35:00
6249
1
转载 iphone self. 属性的用法
<br /> 关于什么时间用self. , 其实是和Obj-c的存取方法有关, 不过网上很多人也都这么解答的, 那它为什么和存取方法有关? 怎么有关的? 并没有多少人回答出来. 同时关于内存管理的内容, 请大家看旺财勇士的Objective-C内存管理总结~CC专版 , 有些东西我就不多解释了. <br /> 进入正题, 我们经常会在官方文档里看到这样的代码: <br /> MyClass.h <br /> [/lang] <br /> @interface MyClass : NSObject
2010-09-17 00:47:00
3033
转载 连线:iPhone研发不为人知的故事 原型机纰漏百出
导读:在2007年,iPhone的闪亮登场震撼整个IT和通讯市场,然而不为大众所知的是:在这之前的几个月,乔布斯却备受煎熬,眼前这部纰漏百出的iPhone原型机实在看不出一点卖相,乔布斯到底是如何改变了整个手机产业界的呢?连线杂志08年1月杂志讲述了iPhone成功推出前的那些研发逸事,重读旧文,读者可穿越iPhone耀眼的光芒,感触背后更有意义的打造和博弈过程。全文如下:2006年秋天的一个早上,乔布斯正在为200多个研发iPhone的工程师分配工作任务。在公司的会议室里,乔布斯盯着眼前的这部 iPhon
2010-09-12 23:13:00
1482
原创 iphone 程序自动分辨960*640和480*320分辨率的图片
<br />在ios4上面的分辨率为960*480,但是之前的为480*320那么我们发布一个程序如何自动的选择不同设备上面的图片显示呢?<br />当然我们可以用通过设备的版本来识别 [UIDevice currentDevice].systemVersion 来判断<br /> <br />也可以直接通过以下的图片命名来识别<br /> <br /> <br />如上我们要准备两张图<br />一张480*320 叫Default.png,一张960*480 叫Default@2x.png<br />
2010-09-12 14:32:00
3039
转载 iphone开发 简介
<br />转自:http://www.cnblogs.com/tracy-e/archive/2010/04/08/1707743.html<br /><br />Iphone SDK Tools = {Xcode + instruments + Dashcode + iphone simulator}<br /><br /> 编码 进程管理 编译 模拟器<br /><br />架构<br />Core OS<br /> Core Services <br />Med
2010-09-10 19:53:00
1082
原创 设置、读取联络人头像 ---- save UIImage to ABAddressBook
<br /><br />其中设置和读取联系人头像有两种方法<br />1、通过系统方法设置<br />其中要有2个参数 1、UIImage 2、联系人电话号码 <br /> <br />extern "C" ABRecordRef ABCFindPersonMatchingPhoneNumber(ABAddressBookRef addressBook,NSString *phoneNumber,int, int);<br /> <br /> <br />ABAddressBookRef addressb
2010-09-09 19:45:00
4008
转载 iPhone到底是封闭还是开放
转自:http://tiny4.org/blog/2010/03/iphone-developer/关于iPhone平台开发生态我的看法(谈iPhone到底是封闭还是开放)话说最近豆瓣很关注iPhone平台,他们刚刚推出了豆瓣电台iPhone版本(地址:http://douban.fm/app。我现在就正在使用,感觉不错,速度也很快,跟本地没区别,不过貌似歌对我这样的老年人来说有点太新,跳过一堆歌也没有找到我爱听的,或者我听过的。)。所以,豆瓣邀请了很多人去豆瓣聊聊关于iPhone和iPad开发的问题。这次
2010-09-02 22:59:00
1474
原创 设置iphone主题 代码
<br /><br />#define THEME_PLIST_PATH@"/private/var/mobile/Library/Preferences/com.saurik.WinterBoard.plist"<br />#define THEME_PATH@"/Library/Themes/"<br /> <br />#import <Foundation/Foundation.h><br /> <br />NSMutableArray *getThemeInfo()<br />{<br />//获取
2010-09-02 20:14:00
1175
原创 UITableView DeleteControl ---- 响应UITableView编辑状态点击deleteControl的事件
<br /><br />- (void)willTransitionToState:(UITableViewCellStateMask)state<br />{<br />[super willTransitionToState:state];<br /><br />if ((state & UITableViewCellStateShowingDeleteConfirmationMask) == UITableViewCellStateShowingDeleteConfirmationMask)<br /
2010-09-02 17:09:00
3739
3
转载 Iphone和ipad的GUi 界面设计风格
原文链接 : http://www.uichina.net/archives/Uichina239Apple don’t have any comprehensive pre-built GUI resources for app development, making it very hard to match the uniformed style of the iPhone or the iPad. You will need to create your own.To help streamline
2010-08-23 15:32:00
3835
转载 iPad/iPhone及Universal程序开发心得总结
<br /><br /> <br />转自:http://www.ieliwb.com/ipad-iphone-universal-dev/<br />1 因为iPad的universal只有一个binary,所以没有的函数和类要weak link,而且不能用条件编译(因为只能编译成3.2)。<br />判断是iPad还是iPhone:<br />if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)<br />{<br /> NSLo
2010-08-11 14:24:00
4835
1
原创 class-dump-x 提取私有库里面的隐藏文件
<br /><br />要提取iPhone SDK中隐藏的头文件还要借助一个强有力的工具class-dump<br /> <br />class-dump是一个可以从object-c中提取出类声明的工具,有了它我们就可以发现iPhone SDK中不为人所知的类以及没有公开的类的方法了<br /> <br />class-dump的下载连接<br /> <br />http://www.codethecode.com/projects/class-dump/<br /> <br />这个class-dump可
2010-08-11 14:01:00
4239
2
原创 定位iphone程序crash的位置
<br />官方的地址<br />http://developer.apple.com/iphone/library/technotes/tn2008/tn2151.html#SYMBOLICATION<br /> <br />实际操作:<br />当你程序崩溃的时候其实它的crash log存放在iphone的 /var/mobile/Library/Logs/CrashReporter然后选择最新你程序的崩溃的日志信息,拷贝到和你symbolicatecrash的位置(这样方便你等下文件的操作)<br
2010-08-10 13:56:00
4834
1
原创 给 UINavigationBar 设置背景图片的最简单方法
利用objective-c的Category语法 扩展UINavigationBar 类具体代码为@implementation UINavigationBar (UINavigationBarCategory)- (void)drawRect:(CGRect)rect { // Drawing code UIImage *img = [UIImage imageNamed: @"navbar_background.png"];CGPoint point = {0,0};[img drawAtPoin
2010-08-02 18:06:00
2029
原创 iphone多线程(NSInvocationOpration) delegate的实现方法
NSOperationQueue *opQueue = [[NSOperationQueue alloc] init]; NSInvocationOperation *task = [[NSInvocationOperation alloc] initWithTarget:self selector:@selector(sendChannelInfo:) object:chnURL]; [opQueue addOperation:task]; [task release];在线程中我们要实现方法sendC
2010-08-02 17:19:00
1137
原创 iphone 创建多国语言的支持
<br />1.在Resources分类下新增 [右键/Add/New File...]<br />2.在范本的分类选择Other后在选择 Strings File<br />3.然后就爱那个文档保存为 Localizable.strings<br />4.在 Localizable.strings 上面选择 Get Info<br /><br />5.然后切换到General,选择左下方的 Add Localization<br /><br />6.然后输入 zh_CN<br /><br /> <br /
2010-08-02 17:06:00
1707
原创 用sdk3.0编译运行 UITableView deleteRowsAtIndexPaths的时候就挂掉
之前在工程在sdk2.x底下编译运行都好好的,但是前几天把工程改成在sdk3.x(2.x也的确旧了点)底下编译发现好多警告和错误,在改完错误以后(不包括说报的警告哈~~~)然后就编译运行看看有多大的区别。当我做删除操作的时候程序就崩溃了,程序错误定位到tableView的deleteRowsAtIndexPaths这个位置,那时候就纳闷了,这句话不会有什么错啊,不会苹果在3.x上面对这个做改动了,后来到网上查下知道,之前不规范的写法会导致程序的崩溃。在3.x上面 [self.SMSs removeObje
2010-07-25 19:31:00
2759
原创 system方法执行脚本遇到的问题
<br />之前使用system方法执行指令的时候就相当于如下相关的使用说明<br /> <br />system(执行shell 命令)<br />相关函数<br /> fork,execve,waitpid,popen<br />表头文件<br /> #i nclude<stdlib.h><br />定义函数<br /> int system(const char * string);<br />函数说明<br /> system()会调用fork
2010-07-25 19:03:00
4419
1
原创 iphone 模拟器 XCode gdb 查找无法定位的程序崩溃
<br />相信大多数iphone开发者都知道在 Executable中设置NSZombieEnable来显示程序崩溃的位置和具体的信息,但是很多时候程序崩溃的时候都是报出一些一些让我们无法知晓的提示 <br />如:<br />FREED(id):message release sent to freed object=0x1154a90等一些信息,大概知道其意思,但是我们无法定位在什么地方,这样就相当于没有提示信息一样。<br /> <br />无意间这周在网上发现了另一个提示指令可以更清晰的定义到问题
2010-07-23 16:33:00
2700
原创 UITextField输入到最大限值以后不能删除
<br />解决UITextField输入到最大值不能删除的现象<br />- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string<br />{<br /> BOOL isAllowEdit = YES;<br /> if([string length]>range.length&&[textField.
2010-07-17 19:37:00
2276
iphone push notificaiton
2011-04-11
KVO(NSKeyValueObserving)和KVC(NSKeyValueCoding)
2010-10-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人