<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Cocoa China 苹果开发中文站</title>
	<atom:link href="http://www.cocoachina.com/index.php/feed" rel="self" type="application/rss+xml" />
	<link>http://www.cocoachina.com</link>
	<description>苹果Mac OS X开发 iPhone开发 Cocoa以及Cocoa Touch</description>
	<pubDate>Sun, 16 Nov 2008 04:22:49 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>开发支持iPhone横屏的Tab Bar程序</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_271.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_271.html#comments</comments>
		<pubDate>Sun, 16 Nov 2008 04:22:49 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[初学者]]></category>

		<category><![CDATA[官方SDK]]></category>

		<category><![CDATA[开发环境]]></category>

		<category><![CDATA[起步教学]]></category>

		<category><![CDATA[tab bar]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=271</guid>
		<description><![CDATA[当你为iPhone开发程序的时候，你可能会用到XCode提供的项目模板。这些模板里有一个叫做Tab Bar Application的，可以帮助你快速创建一个基于Tab Bar的程序，但是默认生成的模板仅仅支持竖屏显示。那么如何才能做一个这样的程序，既支持横屏也支持竖屏呢？本文我们会探讨这个问题。 
&#160;
 
作者Matt Long
原文地址&#160;http://www.cimgf.com/2008/11/13/landscape-tab-bar-application-for-the-iphone/
&#160;
&#160;
首先在XCode中创建一个新的Tab Bar程序。
&#160;
1 按Command+Shift+N，在iPhone OS中选择Tab Bar Application，点击Choose&#8230;
2 为项目写一个名字，比如Tab Test
3 点击Save按钮。
&#160;
你首先会注意到的是模板生成了两个类，一个叫做FirstViewController，用来控制第一个view。另一个叫做Tab_TestAppDelegate，作为程序的主控制器。
&#160;
看一看FirstViewController中剩下的代码，大部分都被注释掉了，但是你会注意到有一个方法可以支持横屏。我们特别关心的是 -shouldAutorotateToInterfaceOrientation。 去掉这段注释，返回YES。这个设置会让controller支持所有的方向。



// Override to allow orientations other than the default portrait orientation.


- &#40;BOOL&#41;shouldAutorotateToInterfaceOrientation:&#40;UIInterfaceOrientation&#41;interfaceOrientation &#123;


&#160; &#160; // Return YES for supported orientations


&#160; &#160; return YES;


&#125;



&#160;


&#160;
这样做，当iPhone翻转时，会让我们的View也发生改变。用模拟器编译运行程序，当模拟器打开程序，选择菜单中的Hardware -&#62; Rotate Left。你会发现当设备旋转时，View并没有跟着旋转。这是为什么呢？
&#160;
全部或是没有
&#160;
记住默认的tab bar程序模板建立了一个支持两个view的tab bar组建。当我们特别告诉FirstViewController对象支持横屏时，我们并没有告诉第二个view也同时支持横评。Tab bar工作的方式是如果任意一个view controller对于方向感应做出限制时，所有的View都会相应做出同样的限制。
&#160;
这就意味着所有的controller必须一样调用-shouldAutorotateToInterfaceOrientation方法，返回YES来告诉系统打开横屏支持。在我们默认的Tab Bar程序里，我们并没有将第二个View制定到Controller里，因为我们并没有定义第二个controller。那么第二个controller在哪儿呢？答案是在Interface Builder中。你可以在XCode里双击MainWindow.xib，将Interface Builder打开。点击第一个View的tab，在Inspector中选择Identity tab，你就会发现是怎么回事了。
&#160;

&#160;
注意我们使用的是UIViewController类，这是我们view的controller，它紧紧提供了基本功能：这意味着它并没有完全提供controller的所有功能。屏幕旋转的默认设置仅仅支持竖屏。换句话讲，只有派生的类才支持通过-shouldAutorotateToInterfaceOrientation方法来打开横屏支持。

&#160;
如果你希望你的程序支持横屏，你所有的tab view必须有自己的view controller，然后调用-shouldAutorotateToInterfaceOrientation，并返回YES来支持横屏。
&#160;
结论
&#160;
iPhone是很有趣的平台，非常强大，但是和你所熟悉的Mac OSX系统还是有些细微的差别。技巧是要记住你学过的Cocoa、MVC的基本概念，你就能够解决遇到的问题。
&#160;
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_271.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>游戏是这样写成的(第五篇：MD2模型显示)</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_270.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_270.html#comments</comments>
		<pubDate>Sun, 12 Oct 2008 03:47:16 +0000</pubDate>
		<dc:creator>dr_watson</dc:creator>
		
		<category><![CDATA[OpenGL ES]]></category>

		<category><![CDATA[官方SDK]]></category>

		<category><![CDATA[3d]]></category>

		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[md2]]></category>

		<category><![CDATA[OpenGL]]></category>

		<category><![CDATA[游戏]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=270</guid>
		<description><![CDATA[目前dr_watson为Cocoachina读者带来的原创优秀教学《游戏是这样写成的》系列文章已经发表了四篇，给广大iPhone开发者在游戏开发方面以极大的帮助。今天给读者们带来第五篇：MD2模型显示，相信会让广大iPhone游戏开发者学习到更多iPhone 3D游戏开发的知识。
《游戏是这样写成的》iPhone游戏开发系列教学，作者：dr_watson，优秀iPhone游戏CubicMan开发者。
第一篇: 建立 OpenGL ES 项目
第二篇: 混合 C/C++/Obj-C 的应用
第三篇: 简单的游戏框架
第四篇: 缩放和混色
cocoachina.com专稿，如需转载请提前联系。


 
Seven同学在论坛讨论怎样显示MD2，正好我以前在PSP上有个MD2的类，我把它移植了过来，给大家参考一下或拿来玩玩。
在Wrapper里，我也加了两个新功能，一个是Enable2D,一个是Enable3D，方便我们混合2D/3D。
&#160;



void Enable2D&#40;&#41;


&#123;


&#160; &#160; int width = SCREEN_WIDTH;


&#160; &#160; int height = SCREEN_HEIGHT;


&#160; &#160; 


&#160; &#160; glViewport &#160; &#160; &#160;&#40;0, 0, width, height&#41;;


&#160; &#160; 


&#160; &#160; glMatrixMode &#160; &#160;&#40;GL_PROJECTION&#41;;


&#160; &#160; glLoadIdentity &#160;&#40;&#41;;


&#160; &#160; glOrthof&#40;0, &#40;float&#41;width, 0, &#40;float&#41;height, 0, 100&#41;;


&#160; &#160; glMatrixMode &#160; &#160;&#40;GL_MODELVIEW&#41;;


&#160; &#160; glLoadIdentity&#40;&#41;;


&#160; [...]]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_270.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Google的开源苹果软件更新框架</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_269.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_269.html#comments</comments>
		<pubDate>Tue, 07 Oct 2008 06:06:35 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[源码例子]]></category>

		<category><![CDATA[update engine]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=269</guid>
		<description><![CDATA[
Google放出了一个新的基于苹果系统的开源软件更新框架，叫做Update Engine。这个框架的主要功能是帮助苹果软件的开发者来实现软件的自动更新机制，Google自己的工具也将使用这个Update Engine来进行自动更新。
在此之前，大家最常用的软件自动更新库是Sparkle，Update Engine并非与其竞争，而是为了解决不同的问题而出现。
Update Engine功能很强，几乎可以自动更新任何软件，包括Cocoa程序，屏保，系统预置工具，甚至还可以更新内核扩展，常用文件以及权限为root的程序等。
Update Engine的独特性体现于以下几点：

几乎可以更新任何产品：Cocoa程序、系统预置、内核扩展等
可以更新不基于Bundle的程序，如命令行工具、普通文件等
可以同时更新多个产品
基于单一框架结构

另外，Google还提供了两个视频：


有兴趣的朋友可以试试。 下载地址在这里。
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_269.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>iPhone开发区精华/已解决问题/待解决问题索引及补遗</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_268.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_268.html#comments</comments>
		<pubDate>Fri, 19 Sep 2008 07:30:56 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[一般文章]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=268</guid>
		<description><![CDATA[之前没有总结整理过iPhone开发区的内容和问题。上次做了个投票之后，有人提出最好整理个FAQ之类的东西，第一步咱们先整理坛子里有的问题吧。FAQ也会逐渐整理，还要依靠大家的力量。
建议大家在论坛提问之前先在这里翻翻是否有人提过类似的问题，也许直接就解决了。这种类型的帖子相信会对大家有用。


入门篇
&#60;讨论>iPhone内存总量是多少
&#60;通用>如何退出程序
&#60;通用>iPhone程序启动的机制
&#60;开发环境>如何取消XCode的断点
&#60;通用>如何将TextField中的字符串传递
&#60;通用>如何使用数组
&#60;语言>如何将类对象通过接口方式传递
&#60;通用>如何读写使用plist文件
&#60;通用>iPhone中所包含的字体
&#60;通用>如何使用NSTimer定时器
&#60;通用>如何自动设定TextField的焦点
&#60;通用>如何移除UIView中的subview
&#60;App Store>如何填写报税表格
iPhone 1.1.4及以前版本 Toolchain非官方SDK开发内容
环境
&#60;Makefile>Objective-C与C++混写的Makefile应该怎么写
&#60;XCode>Toolchain XCode模板下载
&#60;XCode>怎么为XCode添加libpcap
界面/图形
&#60;TableView>创建单选打钩的PreferenceTable的方法
&#60;TableView>如何在UITable上显示删除按钮
&#60;PickerView>怎么得到UIPickerView ROW 选择改变的事件
&#60;PickerView>UIPickerView上面的半透明横杠如何显示
&#60;图形>如何以动画形式旋转图片
一般开发
&#60;定时器>NSTimer检测不到按键的解决方法
&#60;数据库>如何调用SQLite
&#60;网络>如何使用CFSocketRef的网络功能
2.0官方SDK
基础
&#60;教学>Hello World例子
界面
&#60;显示>UIWebView显示HTML的例子下载
&#60;显示>如何将程序设定为全屏显示
&#60;显示>如何设定让iPhone程序启动即为横屏
&#60;事件>如何打开MultiTouch支持
&#60;事件>如何获取屏幕点中后的事件
&#60;界面>如何为TableView添加Header
&#60;界面>如何调整UITableViewCell的高度
图形
&#60;动画>在iPhone中使用Core Animation方法简介
&#60;Quartz2D>如何绘制自定义图形
&#60;图像显示>如何仅显示图片的某一部分
&#60;图像显示>缩放显示UIImageView
&#60;图像编辑>如何操作图片中的像素数据
文件
&#60;文件存取>如何在iPhone上保存和读取临时数据
其他开发
&#60;编码转换>Ansi多字节编码转换为Unicode的方法
&#60;系统函数>iPhone如何实现类似Windows上GetTickCount()之类的功能
系统
&#60;系统功能>利用NSUserDefaults存取用户设定
&#60;系统功能>如何获取iPhone上的联系人
&#60;系统功能>如何获得当前iPhone默认语言设置
&#60;设备>如何让iPhone实现震动
&#60;设备>如何区分当前设备是iPhone还是iPod Touch
网络
&#60;网络>如何在程序中弹出网页
&#60;下载>如何从HTTP Server上读取数据
&#60;下载>如何下载文件
开发环境
&#60;调试>没有签名如何在真机调试程序

OpenGL ES
OpenGL ES 1.1如何做多纹理混合
关于图形渲染效率的问题
如何绘制半透明图片

教学教程
學習怎樣在 iPhone/iPod Touch 上開發自制遊戲全記錄&#160;by dr_watson
View切换例子源码&#160;by dr_watson
在不同线程中更新界面&#160;by yakie
iPhone中文繁简互转&#160;by yakie
遊戲是這樣寫成的 (第一篇: 建立 OpenGL ES 項目)&#160;by dr_watson
遊戲是這樣寫成的 (第二篇: 混合 C/C++/Obj-C 的應用)&#160;by dr_watson
遊戲是這樣寫成的 (第三篇: 簡單的遊戲框架)&#160;by dr_watson
遊戲是這樣寫成的 (第四篇: 縮放和混色)&#160;by dr_watson
目前无法解决的问题
如何获取wifi节点信息?
蓝牙接口控制打开和关闭
Toolchain与官方SDK互相移植
如何读取sim卡中的数据
程序是横屏但是键盘不横过来，如何解决
如何截获短信
如何获取当前连接的无线网络名
如何让程序后台运行
如何取得硬盘剩余空间大小
怎么检测屏幕是否被点亮
如何播放MP3
如何在程序中禁用自动锁机

目前尚无法解决的问题有些是官方SDK无法实现的，有些是尚未找到资料的，如有人能够解答，感激不尽。
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_268.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>关于《Cocoa入门——使用Objective-C》一书的购书调查</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_267.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_267.html#comments</comments>
		<pubDate>Tue, 16 Sep 2008 09:37:31 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[一般文章]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=267</guid>
		<description><![CDATA[
《Cocoa入门&#8212;&#8212;使用Objective-C》这本书是目前国内唯一的关于Cocoa开发的中文书籍。

详细介绍在这里：
http://www.oreilly.com.cn/book.php?bn=978-7-5083-6561-9
总共354页，后面有中英文对照表，最后一页还有一个硬纸的API速查表。我觉得所有做Mac或者iPhone开发的人都应该有一本。书里面所有基于XCode 2.5的内容都已经改成了最新的XCode 3，例子也做了一定的改动，对广大做苹果开发的群众还是很有帮助的。
这本书第一次印刷只有2500本，很早就卖光了，所以在CocoaChina做一个调查，看看是否有人希望购买。本站不准备卖书的，只是做一个调查，看看有多少人需要，如果能达到一个数量，出版商应该会加印。这件事情对大家来说是个好事，还请大家有需要的话多多投票。
如果您有购买此书的意愿，希望您能够协助进行投票。投票地址
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_267.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>游戏是这样写成的（第四篇：缩放和混色）</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_266.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_266.html#comments</comments>
		<pubDate>Thu, 11 Sep 2008 15:26:31 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[图形图像]]></category>

		<category><![CDATA[官方SDK]]></category>

		<category><![CDATA[游戏]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=266</guid>
		<description><![CDATA[目前dr_watson为Cocoachina读者带来的原创优秀教学《游戏是这样写成的》系列文章已经发表了三篇，给广大iPhone开发者在游戏开发方面以极大的帮助。今天给读者们带来第四篇：缩放和混色，相信同样会让广大iPhone开发者受益非浅。
《游戏是这样写成的》iPhone游戏开发系列教学，作者：dr_watson，优秀iPhone游戏CubicMan开发者。
第一篇: 建立 OpenGL ES 项目
第二篇: 混合 C/C++/Obj-C 的应用
第三篇: 简单的游戏框架
cocoachina.com专稿，如需转载请提前联系。

在群里有同学们为了怎样用OpenGL ES缩放图像而烦恼，正好我也很久没更新这个教程了，所以把第三篇的代码更新了一下，加了缩放和混色功能。

我也用了SDK Final的模块，重新建立了一次项目。
这次的修改，主要是CCSprite的render，大家可以参考一下，怎么用glScalef来做缩放。



void CCSprite::render&#40;float x, float y, float angle, float xScale, float yScale&#41;


&#123;


&#160; &#160; y = SCREEN_HEIGHT-y; &#160; &#160; &#160; &#160;// for OpenGL ES, (0,0) is at lower left corner!


&#160; &#160; 


&#160; &#160; GLfloat _minU = mX/mTexture-&#62;getTextureWidth&#40;&#41;;


&#160; &#160; GLfloat _maxU = &#40;mX+mWidth&#41;/mTexture-&#62;getTextureWidth&#40;&#41;;


&#160; &#160; GLfloat _minV = mY/mTexture-&#62;getTextureHeight&#40;&#41;;


&#160; [...]]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_266.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Cappuccino 和 Objective-J官方介绍</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_264.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_264.html#comments</comments>
		<pubDate>Sun, 07 Sep 2008 08:21:48 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[一般文章]]></category>

		<category><![CDATA[cappuccino]]></category>

		<category><![CDATA[objective-j]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=264</guid>
		<description><![CDATA[9月5日，Cappuccino和Objective-J正式放出。做为新一代Web技术的革命，相信这个新的框架会很快流行起来。Cocoachina的读者都具备一定的Mac开发经验，对于Objective-C有一定程度的了解。cocoachina联系了Cappuccino的开发者280 North，得到了中文版Cappuccino文档翻译的授权。以下是官方的Cappuccino和Objective-J的介绍文档，本站将它翻译过来提供给国内的读者。
原文地址：http://cappuccino.org/learn/

Cappuccino是一个开源的应用程序框架，它的目的是让使用者开发出观感和桌面程序相同的Web应用程序。
Cappuccino建立于JavaScript等标准的Web技术之上，它实现了的大部分GNUstep和Cocoa框架。当您使用Cappuccino的时候，无需考虑那些复杂的传统网络技术，像HTML、 CSS ，甚至DOM等。那些烦复的跨浏览器的事情，这个框架已经完全将它们抽象出来了。
Cappuccino采用了一种新的的叫做Objective-J的编程语言，这是以Objective-C为蓝本，完全构建于JavaScript。 用Objective-J编写的程序在客户端中被解释，所以无需编译和任何插件。Objective-J与Cappuccino同时发布，基于LGPL授权。

为应用程序设计
没有人会否认，一个网站和一个桌面应用之间存在着明显区别。同样，我们也认为静态网页和功能全面的Web应用程序之间存在有很大的区别。Cappuccino是专门为开发应用程序而设计，而不是针对开发网站。
Cappuccino尽可能在客户端上完成大部分工作，而不是在服务器上。一个标准的Web应用程序并不会重新载入，而是用传统的AJAX技术发送和接收数据，并将数据展示在客户端上。 280 Slides是第一个使用Cappuccino开发的应用程序，它展示了使用这个新的框架能够开发出什么样的程序。
开发者们可以仅仅关注特定的问题，诸如支持PowerPoint、集成Twitter，或是任何可以让程序变得独特和具有吸引力的事情，完全无需考虑那些诸如如何实现拖拽、复制粘贴文本和对象、 撤消和重做，文件存储，跨浏览器的绘制复杂图形图像等其他功能。
如何比较cappucino其他框架？
Cappuccino不是为建设网站而设计的，也不是为了让现有的网站看起来更&#8220;动态化&#8221;。我们认为，这些目标对于一个独立的框架来说有点远了。像Prototype和jQuery这些框架来做这些工作就足够了，但是由于它们的本质，开发人员只能在开发过程中对它们进行低效的使用。
另外，对于Sproutcore这种现有的框架技术，虽然Sproutcore与Cappuccino的目标类似，但是它的做法与Cappuccino完全不同，仍然依赖于HTML，CSS，JavaScript，Prototype，和一套完全独立的API。另外它还需要特殊的开发软件和麻烦的编译步骤，我们认为这种做法是错误的。
使用Cappuccino，你不需要了解HTML。你一行CSS也不需要写，甚至完全无需和DOM进行交互。我们只要求开发者了解一个技术：Objective-J和一套API。另外，众所周知，这些技术已经存在了很久，并且被广泛地了解。开发者们可以利用几十年的开发和协作经验，加快开发富Web应用程序的步伐。
如果你想建立一个富Web应用程序，您还是需要了解一些新知识的。很多人认为它会是JavaScript2，或HTML5，或是一些新的标准。问题是，正如我们逐渐意识到的，标准的建立工作过于缓慢。Cappuccino现在就可以使用，而不是理论上的未来。Objective-J本质上是JavaScript 2 ，但是可以在当今的任何浏览器上使用。因为我们仅仅依靠最核心的网络技术，做出的提升并不会受浏览器和标准的限制。
支持的浏览器
Cappuccino和Objective-J可以在任何流行的Web浏览器上运行，包括：&#160;

Internet Explorer 6和Internet Explorer 7&#160;
Firefox 2和Firefox 3&#160;
Safari 3 / WebKit
Google Chrome
Opera 9

&#160;
致谢
很明显，和其他开源项目一样，我们很感谢一些项目对我们的帮助，以下是致谢名单：
GNU Step
Cocotron&#160;
Angel Marin&#8217;s SHA-256
&#160;
更多信息
您可以查看我们的教学或是阅读在线文档，以了解更多关于使用Cappuccino 和 Objective-J的信息。
&#160;
如果您希望和大家讨论关于Cappuccino及Objective-J的看法，可以访问讨论区与大家探讨。
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_264.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>快讯：Cappuccino和Objective-J终于放出</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_263.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_263.html#comments</comments>
		<pubDate>Fri, 05 Sep 2008 04:19:53 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[一般文章]]></category>

		<category><![CDATA[cappuccino]]></category>

		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[objective-j]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=263</guid>
		<description><![CDATA[今天280North终于放出了Cappuccino和Objective-J，基于LGPL授权。除了使用Objective-J开发的幻灯片程序，还自带了两个Demo，一个是类似SproutCore的照片程序，另一个是基于iPhone的小游戏Demo。
关于Cappuccino和Objective-J的后续介绍本站将在未来的几天内进行更新。
关于Objective-J的相关说明可以参考本站的两篇文章：[1] [2]
尝鲜版地址为：http://cappuccino.org/
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_263.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>支持Cocoa的ActiveRecord</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_262.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_262.html#comments</comments>
		<pubDate>Fri, 29 Aug 2008 13:03:15 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[Cocoa]]></category>

		<category><![CDATA[源码例子]]></category>

		<category><![CDATA[activerecord]]></category>

		<category><![CDATA[mysql]]></category>

		<category><![CDATA[sqlite]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=262</guid>
		<description><![CDATA[如果你对Ruby On Rails有一点了解的话，一定会知道ActiveRecord的大名。ActiveRecord对于存取数据库的操作简单到飞起，开发者再也不用去考虑麻烦的SQL查询，而是把记录当做对象来用就是了。
Ruby On Rails热，ActiveRecord自然也就有人学着做，各种版本各种语言模仿ActiveRecord的到处都是，如果你的数据库程序没用上ActiveRecord，都不好意思出门&#8230;&#8230;
苹果疯子们自然不甘示弱，有人也写了一个Objective-C版的ActiveRecord。

这个版本的ActiveRecord是ninja kitten写的，授权为BSD License，支持以下几个特性：
它支持两种很热很流行的数据库：

SQLite 3
MySQL 5.0

还支持4种很爽很简单的数据库关联关系：(下面的比如抄自fleaphp）

Has many &#160;比如&#160;每一篇文章都有多个（0-n）评论
Has one 比如&#160;每一个公民都有一个身份证号码
Has and belongs to many 比如&#160;每一位作者都写了多本（0-n）书籍，而每一本书籍都有多个（1-n）作者
Belongs to 比如&#160;每一个评论都属于一篇文章

另外，这个ActiveRecord可以用在iPhone上（不过并不支持MySQL，只支持SQLite，但是那样也很好了），作者提供了一个iPhone的模板供开发者使用。
用法同样简单到飞起，在数据库建表，然后建一个跟表名相同的Model类，继承于它自带的ARBase类，直接find出来的就是一个对象了。
如果你很喜欢这种数据库的操作方式，而不想累自己的话，那快点去这个地址下载这个Cocoa版本的ActiveRecord吧。
另外，如果你只用SQLite，那么这里还有一个另外的选择，同样实现了ActiveRecord的功能。
&#160;
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_262.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>XCode鲜为人知的php编辑功能</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_261.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_261.html#comments</comments>
		<pubDate>Tue, 26 Aug 2008 08:38:54 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[开发环境]]></category>

		<category><![CDATA[php]]></category>

		<category><![CDATA[xcode]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=261</guid>
		<description><![CDATA[最近一直在做些web相关的事情，因此经常需要写一些php脚本。Mac上的一些编辑器好归好，但也各有缺点。
TextMate很好用，不过讨厌的地方也很明显，中文的显示就算通过改字体的方法进行修改，显示出来的也是半个字大小的长条字，难看的紧。相比之下，BBEdit要好很多，不过有个小小问题，目录结构的项目管理窗口是浮出的，总是需要通过command+`来回切换。Coda的感觉更好些，语法高亮，语法提示一应俱全，不过无法分析整个项目的类和函数，所以语法提示的也只是php内置的语法。
于是突发奇想，想看看XCode是否可以编辑php。

&#160;
默认XCode并没有出现在php文件的打开菜单中，建了一个空的项目之后，把php脚本整个目录拽到了新建的项目里。语法高亮有了，不过感觉关键字少了些，只有function，foreach等内置的关键字起到了高亮作用。
不过用了一会就发现，XCode可以分析整个php项目里的类和方法，还可以通过语法提示显示出来。
下面这张图就是XCode做的语法提示：

再往后面用，更发现一个比较有趣的功能，XCode还可以自动完成php的语法：

用习惯了XCode，自然感觉相比其他编辑器更加熟悉。既然XCode也可以进行php的编辑，何不就用它了呢？
XCode支持的其他语言的语法高亮还有很多，下面是一个列表：

]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_261.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>iPhone GUI的PSD分层图</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_260.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_260.html#comments</comments>
		<pubDate>Mon, 25 Aug 2008 08:15:31 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[一般文章]]></category>

		<category><![CDATA[GUI]]></category>

		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=260</guid>
		<description><![CDATA[Macgood的infopower提供了一个iPhone GUI的PSD素材。本站曾经介绍过OmniGraffle的iPhone模板，今天这个PSD素材正好可以和上次的模板配合使用。

下载地址在这里，需要注册一个Macgood的帐户。
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_260.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>两个Objective-C的收发Email代码</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_259.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_259.html#comments</comments>
		<pubDate>Sat, 16 Aug 2008 15:38:38 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[Cocoa]]></category>

		<category><![CDATA[源码例子]]></category>

		<category><![CDATA[网络]]></category>

		<category><![CDATA[email]]></category>

		<category><![CDATA[imap]]></category>

		<category><![CDATA[pop3]]></category>

		<category><![CDATA[smtp]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=259</guid>
		<description><![CDATA[前些天有读者提出需要在iPhone中开发Email的程序。在iPhone的SDK中除了使用mailto的方式发送邮件之外暂时还没有其他更好的方法。
这里介绍两个基于Objective-C的Open Source的Email代码，理论上来说经过微小的修改就可以用于iPhone中，不过需要注意的是请注意这两个代码的授权方式。


Pantomime是一个用于开发邮件程序的完整框架，而且有相当多的基于Mac的桌面程序都使用了这个框架。在功能方面，支持MIME编码和解码，完全支持IMAP和POP3协议，并支持本地邮件发送或使用远程SMTP发送，支持SSL/TLS安全发送及接收邮件机制。
它的大部分代码都是使用Objective-C写成，只有一小部分需要性能的代码用c写成，另外它还使用了一点eml代码。它既可以用于Mac OSX，还可以在GNUStep下编译。
Pantomime的使用非常简单，而且下载包中也提供了完善的使用例子，仅仅使用很短的代码就可以实现邮件的接收、发送以及密码验证等功能。
如果你希望开发一个完整的电子邮件程序，相信Pantomime是最好的选择。下载地址在这里，版本为1.2.0pre3。
另外一个代码的名字叫做MailCore Framework，由Matt Ronge开发（感觉做Mac开发的人叫Matt的好多&#8230;&#8230;）。同样非常好用，也自带了两个简单清楚的例子。
用MailCore Framework发送邮件非常简单：
&#160;



CTCoreMessage *testMsg = &#91;&#91;CTCoreMessage alloc&#93; init&#93;;


&#91;testMsg setTo:&#91;NSSet setWithObject:&#91;CTCoreAddress addressWithName:@&#34;Monkey&#34; email:@&#34;monkey@monkey.com&#34;&#93;&#93;&#93;;


&#91;testMsg setFrom:&#91;NSSet setWithObject:&#91;CTCoreAddress addressWithName:@&#34;Someone&#34; email:@&#34;test@someone.com&#34;&#93;&#93;&#93;;


&#91;testMsg setBody:@&#34;This is a test message!&#34;&#93;;


&#91;testMsg setSubject:@&#34;This is a subject&#34;&#93;;



设置好之后就可以直接发送：



CTSMTPConnection sendMessage:testMsg server:@&#34;mail.test.com&#34; username:@&#34;test&#34; password:@&#34;test&#34; port:25 useTLS:YES shouldAuth:YES&#93;;


&#91;testMsg release&#93;;



需要注意的是MailCore并不支持多线程，另外MailCore将所有信息都保存在内存中，因此需要开发者自己手写保存的代码了。不过虽然如此，它还是一个非常简单易用的邮件接收发送代码，建议读者下来看看。
MailCore的下载地址在这里，其中包括了文档和例子。
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_259.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>挺逗的，鸽子玩iPhone的TTR</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_258.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_258.html#comments</comments>
		<pubDate>Thu, 14 Aug 2008 08:05:15 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=258</guid>
		<description><![CDATA[放上一个挺好玩的视频，一个鸽子玩iPhone上的Tap Tap Revenge&#8230;

这里还有个日本的iPhone广告……甚至还有MGS里的snake出场。

]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_258.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>国内iPhone开发人员也可以加入iPhone Developer Program了</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_257.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_257.html#comments</comments>
		<pubDate>Mon, 11 Aug 2008 03:23:22 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[官方SDK]]></category>

		<category><![CDATA[2.0]]></category>

		<category><![CDATA[App Store]]></category>

		<category><![CDATA[developer program]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=257</guid>
		<description><![CDATA[感谢hustmobile提供的信息，苹果中国已经提供了中国开发人员加入iPhone Developer Program的方法，只是$99的版本要卖到748元人民币。不过不管怎么说，还是感谢苹果中国提供了一个快捷的途径，让中国开发者也可以参与到App Store的开发中来。
需要特别注意的是汇款之后不要忘记将信息提交给苹果中国的联系人。
官方汇款信息的地址如下：
http://developer.apple.com.cn/tobemember_idp.html
8月15日update: 以上地址今天已经无法访问。如果苹果中国在中国用户加入iPhone Developer Program方面有后续动作，本站将跟踪报道。
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_257.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Cocoa的单态(singleton)设计模式</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_256.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_256.html#comments</comments>
		<pubDate>Sat, 09 Aug 2008 12:35:14 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[Cocoa]]></category>

		<category><![CDATA[Cocoa一般技巧]]></category>

		<category><![CDATA[Objective-C]]></category>

		<category><![CDATA[singleton]]></category>

		<category><![CDATA[单态]]></category>

		<category><![CDATA[设计模式]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=256</guid>
		<description><![CDATA[如果你准备写一个类，希望保证只有一个实例存在，同时可以得到这个特定实例提供服务的入口，那么可以使用单态设计模式。单态模式在Java、C++中很常用，在Cocoa里，也可以实现。
由于自己设计单态模式存在一定风险，主要是考虑到可能在多线程情况下会出现的问题，因此苹果官方建议使用以下方式来实现单态模式：




static MyGizmoClass *sharedGizmoManager = nil;


&#160;


+ &#40;MyGizmoClass*&#41;sharedManager


&#123;


&#160; &#160; @synchronized&#40;self&#41; &#123;


&#160; &#160; &#160; &#160; if &#40;sharedGizmoManager == nil&#41; &#123;


&#160; &#160; &#160; &#160; &#160; &#160; &#91;&#91;self alloc&#93; init&#93;; // assignment not done here


&#160; &#160; &#160; &#160; &#125;


&#160; &#160; &#125;


&#160; &#160; return sharedGizmoManager;


&#125;


&#160;


+ &#40;id&#41;allocWithZone:&#40;NSZone *&#41;zone


&#123;


&#160; &#160; @synchronized&#40;self&#41; &#123;


&#160; &#160; &#160; &#160; if &#40;sharedGizmoManager == nil&#41; &#123;


&#160; &#160; &#160; &#160; [...]]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_256.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>基于php的类Cocoa框架：PHOCOA</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_254.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_254.html#comments</comments>
		<pubDate>Tue, 05 Aug 2008 15:35:17 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[一般文章]]></category>

		<category><![CDATA[Cocoa]]></category>

		<category><![CDATA[phocoa]]></category>

		<category><![CDATA[php]]></category>

		<category><![CDATA[web 2.0]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=254</guid>
		<description><![CDATA[看名字，这不就是php和cocoa的结合嘛&#8230;&#8230;事实也是这样的。自从Java出现了一些支持MVC的Web开发框架，并且越来越流行之后，在Web服务端实现MVC也变得越来越流行了。
Phocoa是一个挺有趣的框架，php本身并不是实现MVC很好的语言，估计作者对Cocoa中毒颇深，因此也想把Cocoa搬到php上。实现了不少东西，支持MVC模型，支持binding，单点入口，支持KVC、KVO，同时又提供了开发工具（当然是Mac Only）。
另外，Phocoa完全支持Smarty模板，并且完全整合到MVC的V（View）中。还有，它还为流行的Web 2.0做了准备，内建支持很多流行的Ajax框架：YUI、Prototype，还有FCKEditor等等。
最好的部分是，这个框架是MIT License，意味着你可以在它基础上做更多开发并用到自己的项目中。
建议读一读它的代码，下载地址在这里。另外，在首页还有一个演示如何使用的视频，建议观看。
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_254.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>也许火星了：iPhone SDK的DashCode是可以做iPhone的Web App的</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_253.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_253.html#comments</comments>
		<pubDate>Sun, 03 Aug 2008 15:30:33 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[官方SDK]]></category>

		<category><![CDATA[dashcode]]></category>

		<category><![CDATA[iui]]></category>

		<category><![CDATA[JavaScript]]></category>

		<category><![CDATA[web app]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=253</guid>
		<description><![CDATA[
最近一直对iPhone SDK本身以及Toolchain关注较多，缺忽略了这样一个事实：iPhone SDK中自带的DashCode也是更新过的版本，支持iPhone的Web App开发。
一直以来的印象DashCode都是用来做Widget的，刚刚发现新版的DashCode其实同样支持iPhone的Web App，而且非常方便。在DashCode的模板里，同时还附带了不少用于制作iPhone特效的Javascript。这样一来，制作iPhone的Web App可以不用IUI，而直接用这些JS提供的效果就可以了。
另外，DashCode的使用方法苹果官方是提供了中文版的文档的，可以参阅这个地址。
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_253.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>使NSImage支持在图片上添加倒影效果</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_252.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_252.html#comments</comments>
		<pubDate>Sat, 02 Aug 2008 14:58:40 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[Cocoa图形]]></category>

		<category><![CDATA[图形图像]]></category>

		<category><![CDATA[源码例子]]></category>

		<category><![CDATA[category]]></category>

		<category><![CDATA[ctgradient]]></category>

		<category><![CDATA[nsimage]]></category>

		<category><![CDATA[倒影]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=252</guid>
		<description><![CDATA[

Mac上一直比较流行的图片设计思路是在一个图片上面增加一个倒影，使其看起来的感觉像是放在一个透明的桌子上。最流行的就是iTunes中的CoverFlow。这个思路后来也被众多的Web 2.0公司的Logo设计者们普遍使用。
NSImage Reflection这段小代码是NSImage的category，专门用来在图片上添加倒影。你可以直接用它在图片上添加倒影效果。
代码可以在这里下载，用法也非常简单：
因为这个代码扩展了NSImage，所以要在某个NSImage图片上添加倒影，只需要使用[NSImage reflectedImage: amountReflected:]方法就可以了。很容易看明白，reflectedImage参数直接带上一个NSImage图片，amountReflected参数则是倒影的深度，用浮点数表示。
另外，代码使用了CTGradient类，如果你只想在Leopard中使用，也可以改改代码，直接使用NSGradient就可以了。
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_252.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Cocoa教学：Windows OOP与Cocoa MVC之对比</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_251.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_251.html#comments</comments>
		<pubDate>Fri, 01 Aug 2008 15:16:33 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[NSWindow]]></category>

		<category><![CDATA[初学者]]></category>

		<category><![CDATA[基础知识]]></category>

		<category><![CDATA[c#]]></category>

		<category><![CDATA[Cocoa]]></category>

		<category><![CDATA[interface builder]]></category>

		<category><![CDATA[mvc]]></category>

		<category><![CDATA[Objective-C]]></category>

		<category><![CDATA[窗口]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=251</guid>
		<description><![CDATA[封装不封装，这是个问题。&#160;
今天我在看Cocoa开发者邮件列表的时候，看到一个帖子，求助如何在两个View之间互相通信的问题。做Windows程序员的时间长的我都不好意思说了，我意识到，这个问题在我刚刚接触到Mac上的Objective-C时也遇到过。
我现在可以提出这个问题的简化版：&#8220;我有一个对话框，获取了一些用户输入的数据。我现在需要从我那个对话框中把这个数据提取出来以供主窗口使用。如何才能从主窗口获取到对话框里的数据呢？&#8221;

本文作者是强悍的Matt Long，作者首发于cimgf，由cocoachina翻译给广大读者。原文地址在这里。文中的&#8220;我&#8221;指作者。
在Windows里，尤其是C# .NET，你可以通过添加一个Form对象来创建新的窗口，而且还可以简单地在设计窗口中添加一些不同的&#8220;控件&#8221;。这些操作是非常容易的。不过一旦窗口创建好之后，你需要在主窗口的代码中建立刚才新建的窗口的实例，然后提供公共变量在两个窗口之间设置或者获取数据。窗口类是由Windows Form模板写好直接交给你使用的，这当然可以使代码看起来清晰干净，但是它打破了MVC的惯例，所以大部分Windows的程序员会花费不少时间提升他们思考的方式也就不足为奇了。
我用VS2008做了一个demo程序，截图大概是这样的：
&#160;
看一下主窗口的代码：



public partial class Form1 : Form


&#123;


&#160; &#160; Panel p;


?


&#160; &#160; public Form1&#40;&#41;


&#160; &#160; &#123;


&#160; &#160; &#160; &#160; InitializeComponent&#40;&#41;;


&#160; &#160; &#160; &#160; p = new Panel&#40;&#41;;


&#160; &#160; &#160; &#160; p.Show&#40;&#41;;


&#160; &#160; &#125;


?


&#160; &#160; private void btnChangeText_Click&#40;object sender, EventArgs e&#41;


&#160; &#160; &#123;


&#160; &#160; &#160; &#160; p.OutputText = this.tbInputText.Text;


&#160; &#160; &#125;


&#125;



&#160;
注意看我声明了一个Panel的对象，这是我们需要在上面设置文字的第二个窗口（view）。下面是Panel类的代码：
&#160;



public partial class Panel : [...]]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_251.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>制作iPhone PXL安装包的方法</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_250.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_250.html#comments</comments>
		<pubDate>Sat, 26 Jul 2008 05:43:54 +0000</pubDate>
		<dc:creator>zltianhen</dc:creator>
		
		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[非官方SDK(Toolchain)]]></category>

		<category><![CDATA[PXL]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=250</guid>
		<description><![CDATA[以下是如何制作iPhone中PXL安装包的方法。另外，如果你希望制作自己的Installer安装源，可以参照本站的文章《如何搭建自己的iPhone Installer软件源》。
详细内容请点击标题察看。



1.新建一个PXL的文件夹
2.在PXL里面新建一个PxlPkg.plist
&#160;
里面复制下面代码
&#160;
&#60;?xml version=&#34;1.0&#34; encoding=&#34;UTF-8&#34;?>
&#60;!DOCTYPE plist PUBLIC &#34;-//Apple Computer//DTD PLIST 1.0//EN&#34; &#34;http://www.apple.com/DTDs/PropertyList-1.0.dtd&#34;>
&#60;plist version=&#34;1.0&#34;>
&#60;dict>
	&#60;key>CFBundleIdentifier&#60;/key>
	&#60;string>Hexin&#60;/string>
	&#60;key>RDPxlPackageFiles&#60;/key>
	&#60;array>
		&#60;dict>
			&#60;key>destination&#60;/key>
			&#60;string>/Applications/HexinIphone.app&#60;/string>
			&#60;key>overwrite&#60;/key>
			&#60;true />
			&#60;key>permanent&#60;/key>
			&#60;false />
			&#60;key>source&#60;/key>
			&#60;string>app&#60;/string>
		&#60;/dict>
	&#60;/array>
	&#60;key>RDPxlPackageDesc&#60;/key>
	&#60;string>HexinIphone&#60;/string>
	&#60;key>RDPxlPackageURL&#60;/key>
	&#60;string>HexinIphone&#60;/string>
	&#60;key>RDPxlPackageFormat&#60;/key>
	&#60;integer>HexinIphone&#60;/integer>
	&#60;key>RDPxlPackageIcon&#60;/key>
	&#60;string>app/icon.png&#60;/string>
	&#60;key>RDPxlPackageName&#60;/key>
	&#60;string>HexinIphone&#60;/string>
	&#60;key>RDPxlPackageVersion&#60;/key>
	&#60;string>0.8&#60;/string>
	&#60;key>RDPxlPackagerName&#60;/key>
	&#60;string>HexinDB&#60;/string>
	&#60;key>RDPxlPackagerContact&#60;/key>
	&#60;string>Hexin@kf.com&#60;/string>
&#60;/dict>
&#60;/plist>
&#160;
&#160;
&#160;
3.在PXL里面新建一个app文件夹， 把你写好的 XXX.app（包括程序里面所有图片，文件等等）文件夹放到app里面 （当然你可以在）&#60;key>source&#60;/key>&#60;string>app&#60;/string>里面把app改为自己喜欢的文件夹名称，只要和你新建的文件夹对应就行。
&#160;
&#160;
4.其他信息自己就按照自己喜欢填吧
&#160;
5.然后到mac上用命令（xp安装了完全的cygwin应该可以，我没有测试）
chmod -R 755 ./*
zip -R /NAME.pxl ./*
&#160;
6.OK 用IBUS安装吧
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_250.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Installer 4开发进度</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_249.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_249.html#comments</comments>
		<pubDate>Fri, 25 Jul 2008 07:45:33 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[非官方SDK(Toolchain)]]></category>

		<category><![CDATA[2.0]]></category>

		<category><![CDATA[installer]]></category>

		<category><![CDATA[toolchain]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=249</guid>
		<description><![CDATA[虽然目前破解的iPhone 2.0中带入了Cydia，不过新版的Installer还在开发中。俄国人今天放出了新版Installer的截图，目前开发已经接近尾声，正在将后台程序和前台界面整合。
几天之内，他们就会联系主要的软件源来加入，同时开始进行测试。
下面是一些新版Installer 4的截图：




更多关于Installer的信息，可以查看Rip Dev Blog的主页。
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_249.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>在iPhone 2.0（非App Store）上执行程序的方法</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_248.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_248.html#comments</comments>
		<pubDate>Wed, 23 Jul 2008 15:56:01 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[非官方SDK(Toolchain)]]></category>

		<category><![CDATA[2.0]]></category>

		<category><![CDATA[Cydia]]></category>

		<category><![CDATA[ldid]]></category>

		<category><![CDATA[toolchain]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=248</guid>
		<description><![CDATA[以下方法是housisong发现，并通过sharen24的程序进行测试，已经验证可行。
首先要在你的iPhone上升级2.0版本，并安装Cydia安装包。然后按照以下步骤进行：

&#160;



ssh root@iphone



apt-get update; apt-get install odcctools



以上这一步也可以使用Cydia的GUI来做。
接着
首先要对你的程序创建一个数字签名，名字比如叫iPhone，签名方法可以参考这里。
然后在XCode中，Target里选择Add New Build Phase, New Script Build Phase, 然后添加下面的脚本



CODESIGN_ALLOCATE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate codesign -s iPhone -f ${TARGET_BUILD_DIR}/${EXECUTABLE_FOLDER_PATH}/${EXECUTABLE_NAME}



如果使用iPod Touch需要做相应的修改。
接着就可以连接到iPhone了（前提是iPhone中先安装了ssh）



scp -r MyApp.app root@iphone:/Applications



&#160;


ssh root@iphone



&#160;


cd /Applications/MyApp.app



&#160;


ldid -s MyApp



&#160;


kill -HUP (springboard进程)



 即可刷新Spring Board。另外，这里有一个mac版的ldid程序可供下载。
如果你希望直接ssh登录到iPhone中调试程序，可以使用Erica Sadun的launch程序，当然首先要把launch程序也用ldid -s加一个签名，然后使用launch来执行程序，就不会执行几秒就被SpringBoard直接杀掉了。
另外，Cydia中还包括一个支持2.0的Toolchain工具，可以直接在iPhone上编译toolchain程序，使用之前需要先把分区调整到至少1G，然后执行：



$ apt-get install ldid



&#160;


$ gcc -o program program.c



&#160;


$ ldid -S program



&#160;


$ ./program



这样就可以直接在iPhone 2.0上面编译程序了。
更多详细资料可以参考这里。
如果你希望和大家讨论关于在iPhone 2.0上执行程序的方法，可以在这里进行讨论。
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_248.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>将iPhone toolchain 1.x移植到toolchain 2.x</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_247.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_247.html#comments</comments>
		<pubDate>Mon, 21 Jul 2008 16:35:41 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[非官方SDK(Toolchain)]]></category>

		<category><![CDATA[2.0]]></category>

		<category><![CDATA[Cydia]]></category>

		<category><![CDATA[PrivateFrameworks]]></category>

		<category><![CDATA[SDK]]></category>

		<category><![CDATA[toolchain]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=247</guid>
		<description><![CDATA[这可能算是今天最大的消息了: Cydia的作者Saurik发表了如何将toolchain 1.x的应用程序移植到2.x的方法。这个方法有点复杂，下面先介绍一下toolchain从1.x到2.x转变时API的一些变化。

LayerKit -> CoreAnimation
&#160;
基本上LayerKit的所有内容都被搬到QuartzCore里了。LayerKit在1.x中就是CoreAinmation, 现在基本上所有LK*都已经变成了CA*。不过名字也不是都完全一样，比如LKCurrentTime编程了CACurrentMediaTime。
&#160;
（cocoachina.com注：通过这点可以看出，open toolchain和官方的SDK也是越来越像了）
&#160;
CG/GS*Ref到UIFont / UIColor的转变
&#160;
字体和颜色分别由GraphicsServices和CoreGraphics各自处理。在1.x中曾经直接在UIKit中可以直接使用。(比如setColor:方法，从前直接跟CGColorRef参数）。不过新的UIKit直接将这两个打包进了UIFont和UIColor。它们之间的互相转换明显很容易。
&#160;
使用PrivateFrameworks
&#160;
为了防止开发者在他们的应用程序中使用后端API（比如经常可能修改的API或者会将系统变得不正常的API），苹果将这些API移到了/System/Library/PrivateFrameworks里，并不包含在链接路径中。要使用这些API，你需要直接将这些Framework用gcc -F参数添加。
&#160;
使用未公开的UIKit
&#160;
首先要了解的是UIKit是苹果几乎完全没有修改的API。由于一些未知的向下兼容性，他们保留了大部分1.x的类，这意味着使用UIKit的大部分1.x代码只需经过微小的命名改动就可以支持新的平台。（感谢大拿Jonathan Zdziarski指出这个问题）
&#160;
命名的改动如下：
UIAlertSheet - UIActionSheet
UIButtonBar - UIToolbar
UISliderControl - UIOldSliderControl
UISwitchControl - _UISwitchSlider
UIWebView - UIWebDocumentView
&#160;
警告对话框/动作对话框的关闭
&#160;
基本上所有关于对话框的使用都和在一个buttonClicked:事件之后关闭有关系。苹果把这个事件命名为didDismissWithButtonIndex: 使用-(void)dismiss方法就可以关闭对话框。
&#160;
双字与单字
&#160;
虽然大部分情况下，苹果都会使用浮点数做为参数，但是在从前UIKit库中的某些函数里，苹果使用了双字。这些地方已经被修改了。比如说：
[UIProgressBar setProgress:(float)]
&#160;
自动键盘支持
&#160;
苹果显然已经意识到，让开发者在用户点击输入框时来手动控制键盘的显示是很愚蠢的事情，我必须同意这一点。（cocoachina.com注：真的很愚蠢，从前要显示键盘，先要创建一个键盘，设定显示的大小和位置，不用的时候还要隐藏掉&#8230;&#8230;连飞出的动画都要自己做才行）不过不幸的是这意味着从前手工创建键盘的代码现在必须要改，否则屏幕会飞出两个软键盘，而且只有一个能用。
&#160;
CoreGraphics和ImageIO
&#160;
大部分希望在屏幕上画东西的程序都不需要从图形缓冲中进行复杂的数据输入/输出。所有关于图形缓冲方面的东西大概都需要吃掉太多的内存，所以它们从CoreGraphics里分到了另一个叫做ImageIO的库里。比如从前的CGImageDestination/Source函数。
&#160;
UIApplicationMain(Class)
&#160;
从前，UIApplicationMain()函数是从UIApplicationMain中继承的类型的元类对象中被传递的（这句话翻着真费劲），然后再被实例化。现在这个函数可选地加入了名字参数，来实现UIApplication的不同功能。如果你将从前类的名字做为参数传递进这两个参数的话，你会得到明显一样的结果。
&#160;
mprotect(), NX,和max_prot
&#160;
这个信息并不适用于破解的设备，但是了解一下苹果已经开始着手防止未经认证的代码执行还是很必要的。在代码签名之外，一旦内存页面设置为可写，就无法执行了，意味着不可能有JIT编译器（在执行时将代码转换为本地代码）或者动态的弹簧床指针的机制了。（cocoachina.com注：这表示Java不可能出现在iPhone上了？）这个问题已经在破解补丁中排除出了kernel。
&#160;
使用新版toolchain的方法还是比较麻烦的，英文版的方法在这里，我们择日再推荐给大家。如果读者对新的toolchain有什么见解和看法，欢迎您在下面发表评论或者在这里和大家讨论。
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_247.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>iPhone 2.0被正式破解的一点思考</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_245.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_245.html#comments</comments>
		<pubDate>Sun, 20 Jul 2008 09:01:01 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[官方SDK]]></category>

		<category><![CDATA[2.0]]></category>

		<category><![CDATA[App Store]]></category>

		<category><![CDATA[toolchain]]></category>

		<category><![CDATA[移动梦网]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=245</guid>
		<description><![CDATA[&#160;

(点击放大)
这个周日，iPhone 2.0正式被破解。这意味着在非AT&#38;T的其他网络也可以使用最新版本的iPhone 2.0版了（实际版本为1.2 5A347），而且可以看到并使用苹果的iPhone版&#8220;移动梦网&#8221;：App Store了。
但是在电话中的国家选择为中国之后，App Store中有不少免费软件和几乎所有收费软件都无法下载。最新的破解工具中取消了从前为大家熟知的Installer，替换为基于apt的Cydia安装工具。

其实对于中国的iPhone开发者来说，这暂时算是一个好消息。虽然已经破解，但是未经签名的官方SDK编译的程序仍然无法在真机运行，相信在不远的将来会有解决方案。希望尽快出现支持iPhone 2.0的toolchain开发工具包。
对于国外的开发者来说，开发针对国外用户的iPhone应用程序，App Store应该是非常好的选择，大部分应用程序使用官方SDK比使用toolchain要好，要方便，还会有一笔收入进帐。但是由于App Store中的软件尚未对中国用户发布，所以对于国内的开发者来说还是一件很头疼的事情。
对大部分国内开发者来说，国外市场并不是他们熟悉的，想法、开发能力和竞争力很难强过国外的iPhone软件开发者，加之对国外用户的使用习惯，喜好都不是很熟悉，希望在国内开发针对国外用户的App Store中的应用程序并从中获取不小的收益，并不是非常好的办法。国内的潜在市场才是他们相对于国外开发者的优势所在。而这些开发者们之前针对国内用户使用toolchain为1.1.4版本开发的软件，要移植到目前还没法使用的官方SDK还有不小的工作量，与此同时，支持iPhone 2.0的toolchain还没有放出，所以现在是一个比较难受的时期。
希望这一切能够在iPhone 2.0的toolchain出现之后解决。至于App Store多久才能进入国内，就要看移动梦网和App Store哪个更强势以及收益如何分配的问题了，按照苹果以往与运营商的谈判和现阶段中国移动的强大看，这个谈判还是很难很快就能够达成。在没有结果之前，对于国内的开发者会是比较难熬的时期：是继续等待和使用toolchain开发非正规渠道发布的软件，还是使用官方SDK不管好坏开始申请App Store，有收入算没收入就扛着，这是一个问题。
如果在国内正式发售的iPhone中，内置的是App Store的话，无疑是一个绝好的消息，但是如果在国内正式发售的iPhone中内置的是移动梦网的话&#8230;&#8230;大家自己琢磨吧&#8230;&#8230;
&#160;
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_245.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>最全的获取苹果机器硬件类型的方法</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_244.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_244.html#comments</comments>
		<pubDate>Sat, 19 Jul 2008 15:02:51 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[Cocoa]]></category>

		<category><![CDATA[Cocoa一般技巧]]></category>

		<category><![CDATA[小技巧]]></category>

		<category><![CDATA[源码例子]]></category>

		<category><![CDATA[hw.model]]></category>

		<category><![CDATA[macintosh]]></category>

		<category><![CDATA[苹果机]]></category>

		<category><![CDATA[硬件]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=244</guid>
		<description><![CDATA[下面的方法可以将&#160;sysctl hw.model 获取的苹果电脑硬件型号转换为容易看懂的形式。
1 复制下面的代码，将其保存为Macintosh.dict:
&#160;




&#123;


&#160; &#160; &#34;ADP2,1&#34; = &#34;Developer Transition Kit&#34;;


&#160; &#160; &#34;iMac,1&#34; = iMac; 


&#160; &#160; &#34;iMac4,1&#34; = &#34;iMac (Core Duo)&#34;;


&#160; &#160; &#34;iMac5,1&#34; = &#34;iMac (Core 2 Duo)&#34;; 


&#160; &#160; &#34;iMac6,1&#34; = &#34;iMac (24-inch Core 2 Duo)&#34;;


&#160; &#160; &#34;M43ADP1,1&#34; &#160;= &#34;Development Mac Pro&#34;;


&#160; &#160; &#34;MacBook1,1&#34; = &#34;MacBook (Core Duo)&#34;;


&#160; &#160; &#34;MacBook2,1&#34; = &#34;MacBook (Core 2 [...]]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_244.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>App Store的同质化, 关于iPhone游戏开发的创新</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_243.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_243.html#comments</comments>
		<pubDate>Fri, 18 Jul 2008 15:29:13 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[官方SDK]]></category>

		<category><![CDATA[App Store]]></category>

		<category><![CDATA[NDS]]></category>

		<category><![CDATA[PSP]]></category>

		<category><![CDATA[Tap Tap Revolutionary]]></category>

		<category><![CDATA[超级猴子球]]></category>

		<category><![CDATA[数独]]></category>

		<category><![CDATA[游戏]]></category>

		<category><![CDATA[游戏开发]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=243</guid>
		<description><![CDATA[
配图：iPhone的数独游戏
App Store出来了，开发者们欢呼雀跃。iPhone是如何开创手机互联网的一个新时代自然不用说，但是摆在开发者眼前的，显然是做点什么的问题。

cocoachina.com专稿，如要转载请先联系。
多数开发者都不约而同地选择了iPhone上的游戏开发。的确，iPhone是个好平台。目前手持游戏机可以拿来说事的只有两个：任天堂的NDS和索尼的PSP。作为一个新的手持游戏平台，iPhone有自己独特的地方：
首先iPhone提供给游戏厂商的SDK和个人/小公司的开发者的SDK是完全一样的，至少使他们站在了同一起跑线。
另外，iPhone具备优于NDS的触摸屏。大家知道NDS的屏幕是上下两个，下面的是笔触式触摸屏。这样，诸如钻石迷情、数独、甚至摸摸瓦里奥这类的游戏，同样可以在iPhone上玩，甚至玩的更好。而PSP则不具备触摸屏。
接下来，三轴的重力感应，这是NDS和PSP都不具备的地方，iPhysycs很好地解释了用它能够做出什么样的游戏来。
再一个iPhone和NDS类似的地方，iPhone同样带有麦克风。玩过NDS上的迷失蔚蓝的开发者，应该会对捧着NDS对着麦克风狂吹以点燃火苗这一情节印象颇深。麦克风用好了，同样可以开发出有新意的东西来。
在3D的表现上，iPhone自然是优于NDS，和PSP基本处于类似档次。这在dr watson放出的iPhone版超级猴子球的截图上就能看出来：画面要比NDS要好很多。而更大的存储空间（8G、16G硬盘）自然不会输于PSP的UMD和NDS的卡带。
上面说了这么多，有意思的事情来了：看看上面的配图：iPhone的数独游戏。这么多游戏说的都是一个事情，把几个数字连起来&#8230;&#8230;
NDS销量遥遥领先于PSP的一个主要原因就是，虽然NDS在硬件性能上不如PSP，但是在NDS上面有很多独特的游戏，这些游戏都很有新意，又很好玩，而开发者将NDS的触摸屏（代表作：摸摸瓦里奥、应援团）、麦克风（代表作：迷失蔚蓝、塞尔达）这两种独特的硬件应用的淋漓尽致，十字手柄无需发挥太大作用。
既然苹果放出了官方的SDK，那么App Store中游戏的同质化一定是不可避免的。但是同时，iPhone中的独特硬件性能一定可以让广大游戏开发者做出更多有新意的游戏来。在开发iPhone游戏的选材过程中，开发者们是不是应该打开思路，不要再做那么多数独、俄罗斯方块了？就算做，也要做出创新，做出与众不同的东西，这才是游戏价值的体现。
我有一个预感，有了Tap Tap Revolutionary，iPhone上面的音乐游戏可能会越出越多&#8230;&#8230;太鼓达人版、吉他英雄版、DDR版、劲舞团版、劲乐团版、QQ音速版、QQ炫舞版&#8230;&#8230;拜托千万不要把iPhone变成另一个&#8220;泡菜&#8221;。
&#160;
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_243.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>最新AC New Soul 苹果广告欣赏</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_242.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_242.html#comments</comments>
		<pubDate>Wed, 16 Jul 2008 15:25:03 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[一般文章]]></category>

		<category><![CDATA[New Soul]]></category>

		<category><![CDATA[广告]]></category>

		<category><![CDATA[苹果]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=242</guid>
		<description><![CDATA[
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_242.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>WebKit的基本用法</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_241.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_241.html#comments</comments>
		<pubDate>Tue, 15 Jul 2008 16:17:27 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[Cocoa]]></category>

		<category><![CDATA[一般文章]]></category>

		<category><![CDATA[网络]]></category>

		<category><![CDATA[DomCore]]></category>

		<category><![CDATA[HTML]]></category>

		<category><![CDATA[JavaScript]]></category>

		<category><![CDATA[Safari]]></category>

		<category><![CDATA[WebCore]]></category>

		<category><![CDATA[WebKit]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=241</guid>
		<description><![CDATA[WebKit是苹果开发中比较常用的浏览器引擎，Safari使用的正是WebKit引擎。WebKit基于KDE的KHTML加以再开发，解析速度超过了以往所有的浏览器。这里简单记录一下WebKit的基本用法。

WebKit由下面的结构组成：

DomCore
JavaScriptCore
WebCore

一般浏览
要打开网页，可以这样做：



&#91;&#91;webView mainFrame&#93; loadRequest:&#91;NSURLRequest requestWithURL:&#91;NSURL URLWithString:urlText&#93;&#93;&#93;;



DomCore
DomCore用于处理DOM文档，包括：

DOMDocument
DOMNamedNodeMap
DOMNode
DOMNodeList

要获取一个DOMDocument，可以这样做：



DOMDocument *myDOMDocument = &#91;&#91;webView mainFrame&#93; DOMDocument&#93;;



要用于HTML处理，可以使用DOMHTMLDocument（Mac OS X 10.4之后），获取方式相同：



DOMHTMLDocument *myDOMDocument = &#40;DOMHTMLDocument*&#41;&#91;&#91;webView mainFrame&#93; DOMDocument&#93;;



方法定义：
苹果的WebKit更新说明
JavaScriptCore
在WebKit中执行脚本的方法：



WebScriptObject *myscript = &#91;webView windowScriptObject&#93;;


NSString *script = @&#34;alert(&#39;hello&#39;);&#34;;


&#91;myscript evaluateWebScript script&#93;;



&#160;
参考：
http://www.macgood.com/thread-24636-1-1.html
http://www.cocoadev.com/index.pl?WebKit
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_241.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>在Cocoa中使用Lua</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_240.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_240.html#comments</comments>
		<pubDate>Tue, 15 Jul 2008 15:55:05 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[Cocoa]]></category>

		<category><![CDATA[一般文章]]></category>

		<category><![CDATA[Foundation]]></category>

		<category><![CDATA[LCLua]]></category>

		<category><![CDATA[Lua]]></category>

		<category><![CDATA[MMORPG]]></category>

		<category><![CDATA[World of Warcraft]]></category>

		<category><![CDATA[魔兽世界]]></category>

		<category><![CDATA[游戏开发]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=240</guid>
		<description><![CDATA[Lua是一种非常好的脚本语言，最常用的是在游戏中。目前最强悍的MMORPG：World of Warcraft魔兽世界的UI插件便是用Lua写成。
LuaCore是一个Objective-C框架，专门用于在Cocoa中使用Lua脚本。同时，它还可以将Lua的数据直接转化成Objective-C的对象，更方便使用。
这里是一个例子，演示如何使用LuaCore：
&#160;




#import &#60;foundation /Foundation.h&#62;


#import &#60;luacore /LuaCore.h&#62;


&#160;


int main &#40;int argc, const char * argv&#91;&#93;&#41; &#123;


&#160; &#160; NSAutoreleasePool * pool = &#91;&#91;NSAutoreleasePool alloc&#93; init&#93;;


&#160;


&#160; &#160; LCLua *lua = &#91;LCLua readyLua&#93;;


&#160; &#160; &#91;lua runBuffer:@&#34;print(&#39;hello world&#39;)&#34;&#93;;


&#160;


&#160; &#160; &#91;pool release&#93;;


&#160; &#160; return 0;


&#125;


&#60;/luacore&#62;&#60;/foundation&#62;



&#160;
这里还有一个简单的Lua Bridge实现，如果有兴趣也可以看一下。
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_240.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>CubicMan Deluxe最新视频欣赏</title>
		<link>http://www.cocoachina.com/index.php/archives/cocoachina_239.html</link>
		<comments>http://www.cocoachina.com/index.php/archives/cocoachina_239.html#comments</comments>
		<pubDate>Mon, 14 Jul 2008 14:51:13 +0000</pubDate>
		<dc:creator>Cocoa China</dc:creator>
		
		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[官方SDK]]></category>

		<category><![CDATA[2.0]]></category>

		<category><![CDATA[CubicMan]]></category>

		<category><![CDATA[游戏开发]]></category>

		<guid isPermaLink="false">http://www.cocoachina.com/?p=239</guid>
		<description><![CDATA[
&#160;下面是dr_watson的游戏CubicMan Deluxe正式版在iPhone 2.0上的视频欣赏

&#160;
]]></description>
		<wfw:commentRss>http://www.cocoachina.com/index.php/archives/cocoachina_239.html/feed</wfw:commentRss>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 5.265 seconds -->
