﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-发布各类Java程序、外挂-文章分类-iPhone开发</title><link>http://www.blogjava.net/lvjiaxi/category/35169.html</link><description>专门发布各类Java程序、外挂，欢迎各界朋友留言定制小程序</description><language>zh-cn</language><lastBuildDate>Fri, 17 Oct 2008 10:10:09 GMT</lastBuildDate><pubDate>Fri, 17 Oct 2008 10:10:09 GMT</pubDate><ttl>60</ttl><item><title>31天iPhone开发实例-Day8-Flickr KML获取器</title><link>http://www.blogjava.net/lvjiaxi/articles/234802.html</link><dc:creator>LemonColin</dc:creator><author>LemonColin</author><pubDate>Fri, 17 Oct 2008 00:37:00 GMT</pubDate><guid>http://www.blogjava.net/lvjiaxi/articles/234802.html</guid><wfw:comment>http://www.blogjava.net/lvjiaxi/comments/234802.html</wfw:comment><comments>http://www.blogjava.net/lvjiaxi/articles/234802.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lvjiaxi/comments/commentRss/234802.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lvjiaxi/services/trackbacks/234802.html</trackback:ping><description><![CDATA[<h4><a href="http://baike.baidu.com/view/38761.html">Flickr</a> <a href="http://baike.baidu.com/view/400307.htm">KML</a>获取器</h4>
<p>原文：<a href="http://www.appsamuck.com/day8.html">http://www.appsamuck.com/day8.html</a>
<p>感谢作者：<a href="mailto:admin@appsamuck.com">admin@appsamuck.com</a>
<p><a href="http://byfiles.storage.msn.com/y1pHFJXjHQWQvv85Hx4PsLAH8ej8SNDJqeJ8JCQHuQUZPzKYrPzXGAGAroBXHmiRpLz?PARTNER=WRITER"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="361" alt="day8_ScreenShot" src="http://byfiles.storage.msn.com/y1pyWkMV7sb4QkWTg2HjAYLnTvmCukn67qTnzZRUayOSx6chHJvhCkuR_2xYr80W2i_f2ZBKFPP4O0?PARTNER=WRITER" width="200" align="right" border="0" /></a>这个程序可以帮助你做出很酷的效果哦~你可以下载<a href="http://baike.baidu.com/view/38761.html">Flickr</a> <a href="http://baike.baidu.com/view/400307.htm">KML</a>的在线数据到你的Google Maps中，也就是说，在Google Maps中的大头针可以显示相应的地区图片啦。不过是需要有KML的连接支持才行。<br />
<p>特点：
<p>* 你需要知道，如何运用awakeFromNib事件，在程序真正运行前初始化参数等。<br />
* 你需要学习如何使用UIButtons, UILabels, UIImageViews, 等控件<br />
* 学习在iPhone xCode中什么是"Utility Applications"（公用的程序）<br />
* 如何从你的程序中调用Google Map<br />
* 这些都是做iPhone应用的基础，加油！<br />
<p>下载源代码： <a href="http://www.namipan.com/d/181278b3a20fd02f26710b040905b4ae922c0bbd1a0f0100">FlickrKML.zip</a></p>
<a href="http://lvjiaxi.spaces.live.com/blog/cns!CBB72D148970B422!157.entry">31天iPhone开发实例-Day8-响应时间</a>
<img src ="http://www.blogjava.net/lvjiaxi/aggbug/234802.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lvjiaxi/" target="_blank">LemonColin</a> 2008-10-17 08:37 <a href="http://www.blogjava.net/lvjiaxi/articles/234802.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>31天iPhone开发实例-Day7-快速拨号器</title><link>http://www.blogjava.net/lvjiaxi/articles/234708.html</link><dc:creator>LemonColin</dc:creator><author>LemonColin</author><pubDate>Thu, 16 Oct 2008 07:34:00 GMT</pubDate><guid>http://www.blogjava.net/lvjiaxi/articles/234708.html</guid><wfw:comment>http://www.blogjava.net/lvjiaxi/comments/234708.html</wfw:comment><comments>http://www.blogjava.net/lvjiaxi/articles/234708.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lvjiaxi/comments/commentRss/234708.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lvjiaxi/services/trackbacks/234708.html</trackback:ping><description><![CDATA[<h4>快速拨号器</h4>
<p>原文：<a href="http://www.appsamuck.com/day7.html">http://www.appsamuck.com/day7.html</a>
<p>感谢作者：<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#97;&#100;&#109;&#105;&#110;&#64;&#97;&#112;&#112;&#115;&#97;&#109;&#117;&#99;&#107;&#46;&#99;&#111;&#109;">admin@appsamuck.com</a>
<p>&nbsp;
<p><a href="http://byfiles.storage.msn.com/y1pE-gYQ_mFqdfGj-O-qxerGP5Lum3ucZ2j6fXUI7GTSMTBLqaPNFDQLCkic7jQNTZz?PARTNER=WRITER"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="364" alt="day7_ScreenShot" src="http://byfiles.storage.msn.com/y1p78Lo8bRbUG6i1gbtojVjIrMOjnI1joq6e4w-RBmsmPJ2z9TiK-27zvlyluA8gsafjorobyDFih0?PARTNER=WRITER" width="202" align="right" border="0" /></a>快速拨号器可以让你轻松快捷的呼叫你的联系人，非常实用。还记得我们在第三天的例子么？那么我们就可以用那个例子来完成今天的任务。当然，我们还需要在代码中加入一些设置参数的信息。现在让我们复习一下代码，然后学习如何增加参数、读写用户信息等。来吧，学会xCode很容易的！<br />
<p>下载源代码：&nbsp; <a href="http://www.namipan.com/d/dea04547b7a7b06e5a985a8f845be7f8be75e6069d5f0000">SpeedDial.zip</a></p>
 <img src ="http://www.blogjava.net/lvjiaxi/aggbug/234708.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lvjiaxi/" target="_blank">LemonColin</a> 2008-10-16 15:34 <a href="http://www.blogjava.net/lvjiaxi/articles/234708.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>31天iPhone开发实例-Day6-响应时间</title><link>http://www.blogjava.net/lvjiaxi/articles/234706.html</link><dc:creator>LemonColin</dc:creator><author>LemonColin</author><pubDate>Thu, 16 Oct 2008 07:15:00 GMT</pubDate><guid>http://www.blogjava.net/lvjiaxi/articles/234706.html</guid><wfw:comment>http://www.blogjava.net/lvjiaxi/comments/234706.html</wfw:comment><comments>http://www.blogjava.net/lvjiaxi/articles/234706.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lvjiaxi/comments/commentRss/234706.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lvjiaxi/services/trackbacks/234706.html</trackback:ping><description><![CDATA[<h4>响应时间</h4>
<p>原文：<a href="http://www.appsamuck.com/day6.html">http://www.appsamuck.com/day6.html</a>
<p>感谢作者：<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#97;&#100;&#109;&#105;&#110;&#64;&#97;&#112;&#112;&#115;&#97;&#109;&#117;&#99;&#107;&#46;&#99;&#111;&#109;">admin@appsamuck.com</a>
<p><a href="http://byfiles.storage.msn.com/y1p9HmyDCRF21uqlgma1AsnbhONCaJWNBYMDGcBMq-4iIYKqGK7VPQ3f0r5R8JCmQcn?PARTNER=WRITER"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="353" alt="day6_ScreenShot" src="http://byfiles.storage.msn.com/y1pyjfOeH5cx783OaDWUugK9ldHeJktIpkiXwfeNu7ptNrUsNkv2d8NKzKcAM1JKGJGwOg-ejLjfDY?PARTNER=WRITER" width="196" align="right" border="0" /></a> 响应时间就是当你执行某个动作是，机器上的感应程序获得你的动作需要的延迟。比如，那些让你看到灯亮或者听到声音是马上按键的感应程序。一般情况下，设备上的元件接收触发似的相应时间在180到200毫秒之间。那么你的反映速度是多少呢？<br />
<p>特点：<br />
<p>* 你需要知道，如何运用awakeFromNib事件，在程序真正运行前初始化参数等。<br />
* 你需要学习如何使用UIButtons, UILabels, UIImageViews, 等控件<br />
* 学习在iPhone xCode中什么是"Utility Applications"（公用的程序）<br />
* 还会学到如何把整数变量转换成字符串<br />
* 如何格式化字符串<br />
* 运用UIAlertView实现弹出对话框<br />
* 运用NSTimer 对象建立计时器
<p>* 使用随机函数random()
<p>* 继续为你的梦想迈进吧~<br />
<p>下载源代码:&nbsp; <a href="http://www.namipan.com/d/8ddace5f730908c523c0da58682c5f32fa3b34c2f7210600">ReactionTime.zip</a></p>
 <img src ="http://www.blogjava.net/lvjiaxi/aggbug/234706.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lvjiaxi/" target="_blank">LemonColin</a> 2008-10-16 15:15 <a href="http://www.blogjava.net/lvjiaxi/articles/234706.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>31天iPhone开发实例-Day5-计数器</title><link>http://www.blogjava.net/lvjiaxi/articles/234607.html</link><dc:creator>LemonColin</dc:creator><author>LemonColin</author><pubDate>Thu, 16 Oct 2008 01:17:00 GMT</pubDate><guid>http://www.blogjava.net/lvjiaxi/articles/234607.html</guid><wfw:comment>http://www.blogjava.net/lvjiaxi/comments/234607.html</wfw:comment><comments>http://www.blogjava.net/lvjiaxi/articles/234607.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lvjiaxi/comments/commentRss/234607.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lvjiaxi/services/trackbacks/234607.html</trackback:ping><description><![CDATA[<h4>计数器</h4>
<p>原文：<a href="http://www.appsamuck.com/day5.html">http://www.appsamuck.com/day5.html</a>
<p>感谢作者：<a href="mailto:admin@appsamuck.com">admin@appsamuck.com</a>
<p>&nbsp;
<p><a href="http://byfiles.storage.msn.com/y1pClg7BjNDAsflNGrpciW2njTwhZYe5YOziTfC7eEjZtQlXuTIsIO1ECMJr8MkSvxg?PARTNER=WRITER"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="364" alt="day5_ScreenShot" src="http://byfiles.storage.msn.com/y1pJmiE2WnCA8NAdqnnpdZcTMW-57n-vlQEuX_tW8qEOP46QXTz3njnXtXdhfa24IJte2Wg0O-ww9U?PARTNER=WRITER" width="202" align="right" border="0" /></a>不用我说，谁都会数数，计数是个简单的事情。但是我们一般会同时做很多事情，换句话说我们整天都会处理很多事情。这样就很容易忘记之前最后一个数字而导致数错。计数器就可以解决这个问题的。那么你现在可以用这个计数器来提示你现在到底数到几了。<br />
<p>特点：<br />
* 你需要知道，如何运用awakeFromNib事件，在程序真正运行前初始化参数等。<br />
* 你需要学习如何使用UIButtons, UILabels, UIImageViews, 等控件<br />
* 学习在iPhone xCode中什么是"Utility Applications"（公用的程序）<br />
* 还会学到如何把整数变量转换成字符串<br />
* 从今天起，你就向一个iPhone程序员迈出了第一步<br />
<p>下载源代码：<a href="http://www.namipan.com/d/848ec10ad69512a8f5f9a79028971ce43f8b87270ea70000">CountMeIn.zip</a></p>
 <img src ="http://www.blogjava.net/lvjiaxi/aggbug/234607.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lvjiaxi/" target="_blank">LemonColin</a> 2008-10-16 09:17 <a href="http://www.blogjava.net/lvjiaxi/articles/234607.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>31天iPhone开发实例-Day4-我的IP地址</title><link>http://www.blogjava.net/lvjiaxi/articles/234476.html</link><dc:creator>LemonColin</dc:creator><author>LemonColin</author><pubDate>Wed, 15 Oct 2008 09:16:00 GMT</pubDate><guid>http://www.blogjava.net/lvjiaxi/articles/234476.html</guid><wfw:comment>http://www.blogjava.net/lvjiaxi/comments/234476.html</wfw:comment><comments>http://www.blogjava.net/lvjiaxi/articles/234476.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lvjiaxi/comments/commentRss/234476.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lvjiaxi/services/trackbacks/234476.html</trackback:ping><description><![CDATA[<h4>我的IP地址</h4>
<p><a href="http://byfiles.storage.msn.com/y1pVADosrJPb7Wi3uUwiyGgOalqnBFXvG5HTrcpnj4OTwHRPfj7MkZOKTWeCNrGfCUB?PARTNER=WRITER"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="366" alt="day4_ScreenShot" src="http://byfiles.storage.msn.com/y1pVH0dAyHT9W0t83n3-VFS1vQ3DWfN4GcW4yDj_3qURO9fjhc-bhktLzUXyx3SLwKMirb7JzrgYQg?PARTNER=WRITER" width="203" align="right" border="0" /></a>
<p>原文：<a href="http://www.appsamuck.com/day4.html">http://www.appsamuck.com/day4.html</a>
<p>感谢作者：<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#97;&#100;&#109;&#105;&#110;&#64;&#97;&#112;&#112;&#115;&#97;&#109;&#117;&#99;&#107;&#46;&#99;&#111;&#109;">admin@appsamuck.com</a>
<p>你经常为找到自己的IP地址苦恼么？你可能经常需要通过IPConfig命令或者某些IP查询网站，甚至你的朋友帮你查询到你的IP地址。 可是在iPhone中就没那么简单了。 那么这个程序就是用来轻松获得IP地址的。程序运行后即可看到IP地址。需要注意的是，这个软件只能运行在你的iPhone上，可别在模拟器上试验哦~<br />
下载源代码：<a href="http://www.namipan.com/d/d6181e320dd54b08938edf9146931a57db3bea67f34b0000">WhatsMyIP.zip</a></p>
 <img src ="http://www.blogjava.net/lvjiaxi/aggbug/234476.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lvjiaxi/" target="_blank">LemonColin</a> 2008-10-15 17:16 <a href="http://www.blogjava.net/lvjiaxi/articles/234476.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>31天iPhone开发实例-Day3-运行需要开放链接（OpenURL）的本地程序</title><link>http://www.blogjava.net/lvjiaxi/articles/234346.html</link><dc:creator>LemonColin</dc:creator><author>LemonColin</author><pubDate>Wed, 15 Oct 2008 00:54:00 GMT</pubDate><guid>http://www.blogjava.net/lvjiaxi/articles/234346.html</guid><wfw:comment>http://www.blogjava.net/lvjiaxi/comments/234346.html</wfw:comment><comments>http://www.blogjava.net/lvjiaxi/articles/234346.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lvjiaxi/comments/commentRss/234346.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lvjiaxi/services/trackbacks/234346.html</trackback:ping><description><![CDATA[<h4>运行需要<a href="http://baike.baidu.com/view/555135.htm">开放链接</a>（OpenURL）的本地程序</h4>
<p><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="240" alt="day3_ScreenShot_Small" src="http://byfiles.storage.msn.com/y1pjKTq9ym1C_P3_5Mjux_qQEVcU3MYZjVLEHyNyMwO1LbYrWhhW6sOdsao5QLVuOV_kG2v9QCIgas?PARTNER=WRITER" width="135" align="right" border="0" />
<p>原文：<a href="http://www.appsamuck.com/day3.html">http://www.appsamuck.com/day3.html</a>
<p>感谢作者：<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#97;&#100;&#109;&#105;&#110;&#64;&#97;&#112;&#112;&#115;&#97;&#109;&#117;&#99;&#107;&#46;&#99;&#111;&#109;">admin@appsamuck.com</a> <br />
</p>
<p>开放连接应用在许多程序中，包括地图、短消息、浏览器、电话功能和其他一些应用。下面是iPhone开发的一小段代码，也是我经常反复参考的代码。很简单，仅仅一行而已。
<p>&nbsp;<br />
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://8004664411"]];
<p><br />
这个程序通过基础的协议实现了拨打电话的过程。
<p>下载源代码：<a href="http://www.namipan.com/d/a0b23e38f9696684cd457175fffdc0817f3f0b1574930000">openURL.zip</a></p>
 <img src ="http://www.blogjava.net/lvjiaxi/aggbug/234346.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lvjiaxi/" target="_blank">LemonColin</a> 2008-10-15 08:54 <a href="http://www.blogjava.net/lvjiaxi/articles/234346.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>31天iPhone开发实例-Day2-用图片方式实现动画</title><link>http://www.blogjava.net/lvjiaxi/articles/234252.html</link><dc:creator>LemonColin</dc:creator><author>LemonColin</author><pubDate>Tue, 14 Oct 2008 08:05:00 GMT</pubDate><guid>http://www.blogjava.net/lvjiaxi/articles/234252.html</guid><wfw:comment>http://www.blogjava.net/lvjiaxi/comments/234252.html</wfw:comment><comments>http://www.blogjava.net/lvjiaxi/articles/234252.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lvjiaxi/comments/commentRss/234252.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lvjiaxi/services/trackbacks/234252.html</trackback:ping><description><![CDATA[<h4>用图片方式实现动画</h4>
<p>原文：<a href="http://www.appsamuck.com/day2.html">http://www.appsamuck.com/day2.html</a>
<p>感谢作者：<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#97;&#100;&#109;&#105;&#110;&#64;&#97;&#112;&#112;&#115;&#97;&#109;&#117;&#99;&#107;&#46;&#99;&#111;&#109;">admin@appsamuck.com</a>
<p>进入第二天，我在App Store上找了找关于&#8220;动画&#8221;的软件。首先我下载了一个叫iFlame的软件，它可以显示一段火焰的图像。在这之前我在App Store上还没看过类似火焰或者闪电的相关软件，觉得一定很酷。那么我要解决的首要问题就是让我的火焰的片段不间断的重复播放。随后我又看见在Crazy Lighter（另一个软件）中动画片段可以无限的循环下去。虽然我不确定Crazy Lighter用得到底是什么方法，但那就是我们要做的。那么我们的做法就是用UIImageView来把一组图片循环播放来代替一个Video片段。下面是代码的关键部分：
<p>// 创建一个新的view组建实现动画<br />
&nbsp;&nbsp;&nbsp;&nbsp; UIImageView* campFireView = [[UIImageView alloc] initWithFrame:self.view.frame];<a href="http://byfiles.storage.msn.com/y1pKGfvNNvG_g3pct2fKV6nGLdSxFdDNhozc7xlchZA2bAtFDa9CRAmAinRSjugglzB?PARTNER=WRITER"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="506" alt="day2_ScreenShot" src="http://byfiles.storage.msn.com/y1pcK36waTgLDNsBoA0e5F3Q8sWPGCEp1uEvnXFOqE8N2ZILMXRZ1hFM50Kn9YbIW7PuTqqkSHv0xg?PARTNER=WRITER" width="281" align="right" border="0" /></a><br />
&nbsp;&nbsp;&nbsp;&nbsp; // 读入所有帧的图片<br />
&nbsp;&nbsp;&nbsp;&nbsp; campFireView.animationImages = [NSArray arrayWithObjects:&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire01.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire02.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire03.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire04.gif"], <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire05.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire06.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire07.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire08.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire09.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire10.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire11.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire12.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire13.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire14.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire15.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire16.gif"],<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [UIImage imageNamed:@"campFire17.gif"], nil];<br />
&nbsp;&nbsp;&nbsp;&nbsp; // 播放所有帧用时1.75秒<br />
&nbsp;&nbsp;&nbsp;&nbsp; campFireView.animationDuration = 1.75;<br />
&nbsp;&nbsp;&nbsp;&nbsp; // 无限重复动画<br />
&nbsp;&nbsp;&nbsp;&nbsp; campFireView.animationRepeatCount = 0;<br />
&nbsp;&nbsp;&nbsp;&nbsp; // 开始动画<br />
&nbsp;&nbsp;&nbsp;&nbsp; [campFireView startAnimating];<br />
&nbsp;&nbsp;&nbsp;&nbsp; // 把view组建增加到主窗口 <br />
&nbsp;&nbsp;&nbsp;&nbsp; [self.view addSubview:campFireView];<br />
<p>明天见啦~<br />
<p>源代码下载：<a href="http://www.namipan.com/d/f904dc903067eff7099ae2cf7eab71003fb76f569ddf1100">Bonfire.zip</a></p>
<img src ="http://www.blogjava.net/lvjiaxi/aggbug/234252.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lvjiaxi/" target="_blank">LemonColin</a> 2008-10-14 16:05 <a href="http://www.blogjava.net/lvjiaxi/articles/234252.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>31天iPhone开发实例-Day1-用户界面控件的实现</title><link>http://www.blogjava.net/lvjiaxi/articles/234170.html</link><dc:creator>LemonColin</dc:creator><author>LemonColin</author><pubDate>Tue, 14 Oct 2008 02:32:00 GMT</pubDate><guid>http://www.blogjava.net/lvjiaxi/articles/234170.html</guid><wfw:comment>http://www.blogjava.net/lvjiaxi/comments/234170.html</wfw:comment><comments>http://www.blogjava.net/lvjiaxi/articles/234170.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lvjiaxi/comments/commentRss/234170.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lvjiaxi/services/trackbacks/234170.html</trackback:ping><description><![CDATA[<h4>用户界面控件的实现</h4>
<p>原文：<a title="http://www.appsamuck.com/day1.html" href="http://www.appsamuck.com/day1.html">http://www.appsamuck.com/day1.html</a>
<p>感谢作者：<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#97;&#100;&#109;&#105;&#110;&#64;&#97;&#112;&#112;&#115;&#97;&#109;&#117;&#99;&#107;&#46;&#99;&#111;&#109;">admin@appsamuck.com</a>
<blockquote>
<h4>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 由于苹果放弃了iPhone SDK的NDA（保密协议），让我们现在可以把iPhone开发的具体实例公之于众。废话不说，先看程序。 虽然程序很简单，但是这些代码显示了iPhone SDK不同于其他编程的一些特点，为此，我吃了不少苦头。&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 程序的名字叫"Minutes to Midnight"（午夜时钟） ，是个很简单的倒计时程序。这个想法来自我的朋友Chris Craft，他之前发表了30天Windows Mobile编程实例。</h4>
</blockquote>
<h4>
<div align="center"><img height="744" alt="" src="http://www.blogjava.net/images/blogjava_net/lvjiaxi/day1_ScreenShot.jpg" width="412" border="0" /></div>
<br />
首先，启动xCode。&nbsp;&nbsp;</h4>
<ul>
    <li>单击: File-&gt;New Project. </li>
</ul>
<br />
在"New Project" 对话框中
<ul>
    <li>选择: iPhone OS -&gt;Applications-&gt; View-Based Application
    <li>输入: "MinutesToMidnight" </li>
</ul>
项目建立完成后，你可以看到一个用户界面（UIview）的视图，同时也是应用程序的主视图。我想让这个计时器的样子像个塑料闹钟一样。所以我用了黑色的背景，红色液晶字体的数字。首先，我们先把用户界面（UIview）的背景设定为黑色：
<ul>
    <li>双击 "MinutesToMidnightViewController.xib" 启动 "Interface Builder"&nbsp;
    <li>单击: Tools -&gt; Reveal In Document Window -&gt; View
    <li>单击: Tools -&gt; Attributes Inspector
    <li>选择background attribute（背景属性）设置为Black </li>
</ul>
<br />
然后，我们增加一个UILabel（文本），用做计数器的显示。
<ul>
    <li>单击: Tools -&gt; Library
    <li>拖动一个Label到Main View（主视图）
    <li>通过鼠标调整Label的大小
    <li>设置位置和颜色，我把它设置为红色居中 </li>
</ul>
<br />
再次，我们需要把对label的引用增加到代码中，完成对Label的实时更新。
<ul>
    <li>在文本窗口"File's Owner"中
    <li>单击: Tools-&gt;Idenity Inspector
    <li>在inspector中，单击 "Class Outlets" 前面的&#8220;+&#8221;
    <li>更改myOutlet1为"countdownLabel"
    <li>更改id为UILabel
    <li>单击submit完成修改 </li>
</ul>
<p>接着，我们来修改类文件。
<ul>
    <li>还是在interface builder 中，在Document Explorer 中选中"File's Owner"
    <li>单击: File-&gt;Write Class Files
    <li>保存为: "MinutesToMidnightViewController"
    <li>单击: Save
    <li>单击: Merge
    <li>在Actions中(右下加) 选择 "Select Left"
    <li>单击: 标题栏上的红色圆圈关闭窗口
    <li>单击: Save
    <li>关闭剩下的分栏窗口
    <li>单击xCode，编译（rebuild project ） </li>
</ul>
<br />
现在，我们需要在代码中连接刚刚编译好的Label和之前在用户界面中增加的UILabel
<ul>
    <li>重新打开Interface Builder
    <li>在Document Window中选择Label
    <li>单击: Tools -&gt; Connection Inspector
    <li>把你的鼠标移动到"New Referencing Outlet"右面的空圈位置(这是圆圈变成了&#8220;+&#8221;)&nbsp;
    <li>拖动这个&#8220;+&#8221;到Document Window窗口中的"File's Owner"
    <li>这时countdownLabel出现在弹出列表中
    <li>单击: File -&gt; Save then close Interface Builder </li>
</ul>
<br />
回到xCode 中重新编译工程<br />
非常好！还有三步 。
<ul>
    <li>启动计时器&nbsp;
    <li>刷新Label&nbsp;
    <li>选择个酷字体 </li>
</ul>
<br />
启动计时器
<ul>
    <li>在xCode中&nbsp;
    <li>在MinutesToMidnightViewController.h文件中增加这一行&#8220; -(void)updateLabel; right before the line @end &#8221;
    <li>在MinutesToMidnightViewController.c文件中增加： </li>
</ul>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -(void)updateLabel {
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; right before the line @end
<ul>
    <li>在MinutesToMidnightAppDelegate.h文件中增加一个变量 "NSTimer *timer;" 并增加一个方法"-(void) onTimer;" </li>
</ul>
<p>&nbsp;
<ul>
    <li>在MinutesToMidnightAppDelegate.m中
    <li>写一个applicationDidFinishLaunching方法，把计时器加进去
    <li>写一个onTimer方法用来在界面中更新label
    <li>写一个"applicationWillTerminate" 方法用来终止计时器
    <li>在dealloc方法中释放计时器 </li>
</ul>
<br />
刷新label
<ul>
    <li>打开MinutesToMidnightViewController.c
    <li>在"viewDidLoad"方法中增加代码改变字体
    <li>写一个"updateLabel"方法，用来获取时间并更新Label </li>
</ul>
<p>生成工程并运行模拟器~
<p>&nbsp;
<p>下载源代码:&nbsp; <a href="http://www.namipan.com/d/ec9cf328359ebc2a6000a7a57ec3d2077534a6021d250000">MinutesToMidnight.zip</a></p>
 <img src ="http://www.blogjava.net/lvjiaxi/aggbug/234170.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lvjiaxi/" target="_blank">LemonColin</a> 2008-10-14 10:32 <a href="http://www.blogjava.net/lvjiaxi/articles/234170.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>