<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>IceTempest Development Studio &#187; iPhone</title>
	<atom:link href="http://icetempest.com/category/iphone/feed/" rel="self" type="application/rss+xml" />
	<link>http://icetempest.com</link>
	<description></description>
	<lastBuildDate>Mon, 12 Mar 2012 16:49:36 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Eve Agent</title>
		<link>http://icetempest.com/2010/12/eve-agent/</link>
		<comments>http://icetempest.com/2010/12/eve-agent/#comments</comments>
		<pubDate>Tue, 21 Dec 2010 14:18:42 +0000</pubDate>
		<dc:creator>Sergio Moura</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://icetempest.com/?p=310</guid>
		<description><![CDATA[Track your Eve Online training skills on your iPhone, iPod Touch or iPad with this app. App Store Link The Eve Online App was submitted to the AppStore and it&#8217;s waiting for approval, but i&#8217;m providing you all some screenshots so you can take a sneak-peek. The App provides Local Notifications of completion skills. You [...]]]></description>
			<content:encoded><![CDATA[<p>Track your Eve Online training skills on your iPhone, iPod Touch or iPad with this app.</p>
<p><a href="itms://itunes.apple.com/us/app/eveagent/id409147687?mt=8" target="_blank">App Store Link</a></p>
<p>The Eve Online App was submitted to the AppStore and it&#8217;s waiting for approval, but i&#8217;m providing you all some screenshots so you can take a sneak-peek.</p>
<p>The App provides Local Notifications of completion skills. You don&#8217;t need any internet connection to receive the notifications, only to update your API information.</p>
<p>v. 1.0 (released)<a href="http://icetempest.com/wp-content/uploads/2010/12/IMG_0436.jpg"></a></p>
<p style="text-align: center;"><a href="http://icetempest.com/wp-content/uploads/2010/12/IMG_0436.jpg"><img class="alignnone size-thumbnail wp-image-313" title="Welcome" src="http://icetempest.com/wp-content/uploads/2010/12/IMG_0436-150x150.jpg" alt="" width="150" height="150" /> </a><a href="http://icetempest.com/wp-content/uploads/2010/12/IMG_0437.jpg"><img class="alignnone size-thumbnail wp-image-314" title="IMG_0437" src="http://icetempest.com/wp-content/uploads/2010/12/IMG_0437-150x150.jpg" alt="" width="150" height="150" /></a> <a href="http://icetempest.com/wp-content/uploads/2010/12/IMG_0438.jpg"><img class="alignnone size-thumbnail wp-image-315" title="IMG_0438" src="http://icetempest.com/wp-content/uploads/2010/12/IMG_0438-150x150.jpg" alt="" width="150" height="150" /></a> <a href="http://icetempest.com/wp-content/uploads/2010/12/IMG_0439.jpg"><img class="alignnone size-thumbnail wp-image-316" title="IMG_0439" src="http://icetempest.com/wp-content/uploads/2010/12/IMG_0439-150x150.jpg" alt="" width="150" height="150" /></a></p>
<p>v. 1.1 (waiting for approval)</p>
<p style="text-align: center;"><a href="http://icetempest.com/wp-content/uploads/2010/12/IMG_0514.jpg"><img class="size-thumbnail wp-image-317 aligncenter" title="IMG_0514" src="http://icetempest.com/wp-content/uploads/2010/12/IMG_0514-150x150.jpg" alt="" width="150" height="150" /></a></p>
<p>Changelog:</p>
<div id="_mcePaste">
<ul>
<li>List of known skills and certificates</li>
<li>UI colors consistent all around the application</li>
<li>Fixed a minor memory leak</li>
<li>Improved visuals and information displayed of the CharacterSheet</li>
<li>Fixed a bug that locked the user out if the download of the skillList returned an error</li>
<li>Fixed a bug where the corporation name of the pilot was not changed if the pilot changed corporations</li>
</ul>
</div>
<p>v. 1.2 (in development)</p>
<p style="text-align: center;">coming soon&#8230;</p>
<p>If you have any questions or suggestions, feel free to leave a comment.</p>
]]></content:encoded>
			<wfw:commentRss>http://icetempest.com/2010/12/eve-agent/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Looking for iPhone Wallpapers?</title>
		<link>http://icetempest.com/2010/06/looking-for-iphone-wallpapers/</link>
		<comments>http://icetempest.com/2010/06/looking-for-iphone-wallpapers/#comments</comments>
		<pubDate>Wed, 30 Jun 2010 11:02:30 +0000</pubDate>
		<dc:creator>Sergio Moura</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://icetempest.com/?p=302</guid>
		<description><![CDATA[Most of the hits coming from Google to this site so far are from people looking for iPhone Wallpapers, so, i&#8217;ve reorganized this site&#8217;s posts to make a category page with all the iPhone Wallpapers-related in an easy to find link. So, if your interest is Wallpapers, this is where you want to go, but [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-64" title="IceTempest Logo" src="http://icetempest.com/wp-content/uploads/2010/02/snow-flake-icon.png" alt="" width="128" height="128" />Most of the hits coming from Google to this site so far are from people looking for iPhone Wallpapers, so, i&#8217;ve reorganized this site&#8217;s posts to make a category page with all the iPhone Wallpapers-related in <a href="http://icetempest.com/category/wallpapers/">an easy to find link</a>.</p>
<p>So, if your interest is Wallpapers, <a href="http://icetempest.com/category/wallpapers/">this is where you want to go</a>, but feel free to look the rest of the site up and see if anything jumps to your eyes.</p>
<p>Enjoy your stay!</p>
]]></content:encoded>
			<wfw:commentRss>http://icetempest.com/2010/06/looking-for-iphone-wallpapers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iOS 4 default Background</title>
		<link>http://icetempest.com/2010/06/ios-4-default-background/</link>
		<comments>http://icetempest.com/2010/06/ios-4-default-background/#comments</comments>
		<pubDate>Mon, 14 Jun 2010 14:05:20 +0000</pubDate>
		<dc:creator>Sergio Moura</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Wallpapers]]></category>

		<guid isPermaLink="false">http://icetempest.com/?p=272</guid>
		<description><![CDATA[You&#8217;re not a developer? Want to get the default iOS wallpaper? Search no more.]]></description>
			<content:encoded><![CDATA[<p>You&#8217;re not a developer? Want to get the default iOS wallpaper? Search no more.</p>
<p><a href="http://icetempest.com/wp-content/uploads/2010/06/iPhone-OS-4.0-Wallpaper.png"><img class="aligncenter size-full wp-image-273" title="iOS-4.0-Wallpaper" src="http://icetempest.com/wp-content/uploads/2010/06/iPhone-OS-4.0-Wallpaper.png" alt="" width="320" height="480" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://icetempest.com/2010/06/ios-4-default-background/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wolf Set</title>
		<link>http://icetempest.com/2010/05/wolf-set/</link>
		<comments>http://icetempest.com/2010/05/wolf-set/#comments</comments>
		<pubDate>Mon, 10 May 2010 04:00:32 +0000</pubDate>
		<dc:creator>Sergio Moura</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Wallpapers]]></category>
		<category><![CDATA[wallpaper]]></category>

		<guid isPermaLink="false">http://icetempest.com/?p=223</guid>
		<description><![CDATA[Wolves are beautiful wild animals. They are present in mystical stories like the Werewolves, and I particularly like what they did in the movie Blood and Chocolate. Now, a small set of wolf backgrounds for your iPhone]]></description>
			<content:encoded><![CDATA[<p>Wolves are beautiful wild animals. They are present in mystical stories like the Werewolves, and I particularly like what they did in the movie <a href="http://www.amazon.com/gp/product/B000OCY7TY?ie=UTF8&amp;tag=liqblu-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B000OCY7TY" target="_blank">Blood and Chocolate</a>.</p>
<p>Now, a small set of wolf backgrounds for your iPhone</p>
<p><a href="http://icetempest.com/wp-content/uploads/2010/05/wolf0.jpg"><img class="aligncenter size-full wp-image-224" title="Howling Wolf iPhone" src="http://icetempest.com/wp-content/uploads/2010/05/wolf0.jpg" alt="" width="320" height="480" /></a><span id="more-223"></span>
<a href='http://icetempest.com/2010/05/wolf-set/wolf0/' title='Howling Wolf iPhone'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/05/wolf0-150x150.jpg" class="attachment-thumbnail" alt="Howling Wolf iPhone" title="Howling Wolf iPhone" /></a>
<a href='http://icetempest.com/2010/05/wolf-set/wolf1/' title='wolf1'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/05/wolf1-150x150.jpg" class="attachment-thumbnail" alt="wolf1" title="wolf1" /></a>
<a href='http://icetempest.com/2010/05/wolf-set/wolf2/' title='wolf2'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/05/wolf2-150x150.jpg" class="attachment-thumbnail" alt="wolf2" title="wolf2" /></a>
<a href='http://icetempest.com/2010/05/wolf-set/wolf3/' title='wolf3'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/05/wolf3-150x150.jpg" class="attachment-thumbnail" alt="wolf3" title="wolf3" /></a>
<a href='http://icetempest.com/2010/05/wolf-set/wolf4/' title='wolf4'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/05/wolf4-150x150.jpg" class="attachment-thumbnail" alt="wolf4" title="wolf4" /></a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://icetempest.com/2010/05/wolf-set/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone Developer Enrollment Experience</title>
		<link>http://icetempest.com/2010/05/iphone-developer-enrollment-experience/</link>
		<comments>http://icetempest.com/2010/05/iphone-developer-enrollment-experience/#comments</comments>
		<pubDate>Fri, 07 May 2010 14:22:54 +0000</pubDate>
		<dc:creator>Sergio Moura</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://icetempest.com/?p=221</guid>
		<description><![CDATA[I&#8217;ve seen numerous posts of how long it takes for someone in a country that do not have a Apple Store (not to be confused with iTunes Store) to enroll into the iPhone Developer Program. I&#8217;m from Brazil, and I&#8217;ve seen many reports of enrollments taking more than 4 weeks to complete, and, after reading [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve seen numerous posts of how long it takes for someone in a country that do not have a Apple Store (not to be confused with iTunes Store) to enroll into the iPhone Developer Program.</p>
<p>I&#8217;m from Brazil, and I&#8217;ve seen many reports of enrollments taking more than 4 weeks to complete, and, after reading all these posts, I was <em>conformed</em> in waiting the four weeks for the process.</p>
<p>Just so you know, we need to send a signed fax with a lot of information, including credit-card details, to Apple.</p>
<p>I was astonished that, 4 hours after I&#8217;ve sent the fax, my credit card was charged and I&#8217;ve got two e-mails saying that my developer program was activated and it was ready to use. Immediately I&#8217;ve logged on the Apple developer site, and it was everything there. Provisioning creation, iPhone SDK 4 and iPhone OS 4 available for download&#8230; Everything.</p>
<p>Well, thank you Apple, for another great customer service.</p>
<p>I&#8217;m sorry my fellow countrymates took so long, but we do need to report the goods and bads, right? Expect some info on upcoming app store software from us!</p>
]]></content:encoded>
			<wfw:commentRss>http://icetempest.com/2010/05/iphone-developer-enrollment-experience/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sunset wallpaper</title>
		<link>http://icetempest.com/2010/04/sunset-wallpaper/</link>
		<comments>http://icetempest.com/2010/04/sunset-wallpaper/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 03:05:27 +0000</pubDate>
		<dc:creator>Sergio Moura</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Wallpapers]]></category>
		<category><![CDATA[wallpaper]]></category>

		<guid isPermaLink="false">http://icetempest.com/?p=217</guid>
		<description><![CDATA[This week I&#8217;ve adapted one of my 3D works from 2004 into an iPhone wallpaper. It&#8217;s a simple sunset image made in 3D Studio Max. Hope you like it! You can check the original artwork here: http://kalel3006.deviantart.com/art/Sunset-12212741]]></description>
			<content:encoded><![CDATA[<p>This week I&#8217;ve adapted one of my 3D works from 2004 into an iPhone wallpaper. It&#8217;s a simple sunset image made in 3D Studio Max.</p>
<p>Hope you like it!</p>
<p><a href="http://icetempest.com/wp-content/uploads/2010/04/SunsetWallpaper_SergioMoura.png"><img class="aligncenter size-full wp-image-218" title="SunsetWallpaper_SergioMoura" src="http://icetempest.com/wp-content/uploads/2010/04/SunsetWallpaper_SergioMoura.png" alt="" width="320" height="480" /></a></p>
<p>You can check the original artwork here: <a href="http://kalel3006.deviantart.com/art/Sunset-12212741">http://kalel3006.deviantart.com/art/Sunset-12212741</a></p>
]]></content:encoded>
			<wfw:commentRss>http://icetempest.com/2010/04/sunset-wallpaper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wallpaper of the week (+ iPhone space wallpaper collection)</title>
		<link>http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/</link>
		<comments>http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/#comments</comments>
		<pubDate>Mon, 05 Apr 2010 03:05:20 +0000</pubDate>
		<dc:creator>Sergio Moura</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Wallpapers]]></category>
		<category><![CDATA[gallery]]></category>
		<category><![CDATA[space]]></category>
		<category><![CDATA[wallpaper]]></category>

		<guid isPermaLink="false">http://icetempest.com/?p=150</guid>
		<description><![CDATA[This week, the featured wallpaper is a Space wallpaper As a bonus, I&#8217;m providing a small collection of beautiful space-related iPhone wallpapers for you. The 8 planets and moons were taken from the Fuel Your Creativity website, wich is a work adapted from wanderingspace.net All works are copyrighted of their respective authors. I don&#8217;t claim [...]]]></description>
			<content:encoded><![CDATA[<p>This week, the featured wallpaper is a Space wallpaper</p>
<p><a href="http://icetempest.com/wp-content/uploads/2010/04/SpaceHDiphonewallpaper.jpg"><img class="aligncenter size-full wp-image-183" title="Space iPhone Wallpaper Featured" src="http://icetempest.com/wp-content/uploads/2010/04/SpaceHDiphonewallpaper.jpg" alt="" width="267" height="400" /></a></p>
<p>As a bonus, I&#8217;m providing a small collection of beautiful space-related iPhone wallpapers for you.</p>
<p><span id="more-150"></span></p>
<p>The 8 planets and moons were taken from the <a href="http://www.fuelyourcreativity.com/free-wanderingspacenet-ipodiphone-wallpapers/" target="_blank">Fuel Your Creativity</a> website, wich is a work adapted from <a href="http://wanderingspace.net" target="_blank">wanderingspace.net</a></p>
<p>All works are copyrighted of their respective authors. I don&#8217;t claim to be the author of any of those. I&#8217;ve acquired these wallpapers from places that does not specify the original authoring. If you are the creator of any of those images and want it removed from this list, just say so.</p>

<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/04_mars/' title='04_mars'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/04_mars-150x150.jpg" class="attachment-thumbnail" alt="04_mars" title="04_mars" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/abstract-space-f/' title='abstract-space-f'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/abstract-space-f-150x150.jpg" class="attachment-thumbnail" alt="abstract-space-f" title="abstract-space-f" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/galaxy-iphone-wallpaper/' title='galaxy-iphone-wallpaper'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/galaxy-iphone-wallpaper-150x150.jpg" class="attachment-thumbnail" alt="galaxy-iphone-wallpaper" title="galaxy-iphone-wallpaper" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/06b_titan/' title='06b_titan'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/06b_titan-150x150.jpg" class="attachment-thumbnail" alt="06b_titan" title="06b_titan" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/07a_miranda/' title='07a_miranda'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/07a_miranda-150x150.jpg" class="attachment-thumbnail" alt="07a_miranda" title="07a_miranda" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/01_mercury/' title='01_mercury'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/01_mercury-150x150.jpg" class="attachment-thumbnail" alt="01_mercury" title="01_mercury" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/abstract-space-apple-f/' title='abstract-space-apple-f'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/abstract-space-apple-f-150x150.jpg" class="attachment-thumbnail" alt="abstract-space-apple-f" title="abstract-space-apple-f" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-19/' title='Space 19'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-19-150x150.jpg" class="attachment-thumbnail" alt="Space 19" title="Space 19" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/iphone-space-wallpaper/' title='iPhone-Space-Wallpaper'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/iPhone-Space-Wallpaper-150x150.jpg" class="attachment-thumbnail" alt="iPhone-Space-Wallpaper" title="iPhone-Space-Wallpaper" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-18/' title='Space 18'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-18-150x150.jpg" class="attachment-thumbnail" alt="Space 18" title="Space 18" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-17/' title='Space 17'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-17-150x150.jpg" class="attachment-thumbnail" alt="Space 17" title="Space 17" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-20/' title='Space 20'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-20-150x150.jpg" class="attachment-thumbnail" alt="Space 20" title="Space 20" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/05b_europa/' title='05b_europa'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/05b_europa-150x150.jpg" class="attachment-thumbnail" alt="05b_europa" title="05b_europa" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-16/' title='Space 16'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-16-150x150.jpg" class="attachment-thumbnail" alt="Space 16" title="Space 16" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-27/' title='Space 27'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-27-150x150.jpg" class="attachment-thumbnail" alt="Space 27" title="Space 27" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-22/' title='Space 22'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-22-150x150.jpg" class="attachment-thumbnail" alt="Space 22" title="Space 22" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/05c_ganymede/' title='05c_ganymede'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/05c_ganymede-150x150.jpg" class="attachment-thumbnail" alt="05c_ganymede" title="05c_ganymede" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/08_neptune/' title='08_neptune'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/08_neptune-150x150.jpg" class="attachment-thumbnail" alt="08_neptune" title="08_neptune" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-14/' title='Space 14'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-14-150x150.jpg" class="attachment-thumbnail" alt="Space 14" title="Space 14" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-art-wallpapers-06/' title='space-art-wallpapers-06'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/space-art-wallpapers-06-150x150.jpg" class="attachment-thumbnail" alt="space-art-wallpapers-06" title="space-art-wallpapers-06" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/spacehdiphonewallpaper/' title='Space iPhone Wallpaper Featured'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/SpaceHDiphonewallpaper-150x150.jpg" class="attachment-thumbnail" alt="Space iPhone Wallpaper Featured" title="Space iPhone Wallpaper Featured" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/06c_iapetus/' title='06c_iapetus'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/06c_iapetus-150x150.jpg" class="attachment-thumbnail" alt="06c_iapetus" title="06c_iapetus" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/03a_luna/' title='03a_luna'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/03a_luna-150x150.jpg" class="attachment-thumbnail" alt="03a_luna" title="03a_luna" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/08a_triton/' title='08a_triton'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/08a_triton-150x150.jpg" class="attachment-thumbnail" alt="08a_triton" title="08a_triton" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/planet_pluto_iphone/' title='planet_pluto_iPhone'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/planet_pluto_iPhone-150x150.jpg" class="attachment-thumbnail" alt="planet_pluto_iPhone" title="planet_pluto_iPhone" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-21/' title='Space 21'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-21-150x150.jpg" class="attachment-thumbnail" alt="Space 21" title="Space 21" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/06a_enceladus/' title='06a_enceladus'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/06a_enceladus-150x150.jpg" class="attachment-thumbnail" alt="06a_enceladus" title="06a_enceladus" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/07_uranus/' title='07_uranus'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/07_uranus-150x150.jpg" class="attachment-thumbnail" alt="07_uranus" title="07_uranus" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/03_earth/' title='03_earth'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/03_earth-150x150.jpg" class="attachment-thumbnail" alt="03_earth" title="03_earth" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/06_saturn/' title='06_saturn'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/06_saturn-150x150.jpg" class="attachment-thumbnail" alt="06_saturn" title="06_saturn" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-26/' title='Space 26'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-26-150x150.jpg" class="attachment-thumbnail" alt="Space 26" title="Space 26" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-23/' title='Space 23'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-23-150x150.jpg" class="attachment-thumbnail" alt="Space 23" title="Space 23" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/earth3/' title='earth3'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/earth3-150x150.jpg" class="attachment-thumbnail" alt="earth3" title="earth3" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/06d_hyperion/' title='06d_hyperion'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/06d_hyperion-150x150.jpg" class="attachment-thumbnail" alt="06d_hyperion" title="06d_hyperion" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/05_jupiter/' title='05_jupiter'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/05_jupiter-150x150.jpg" class="attachment-thumbnail" alt="05_jupiter" title="05_jupiter" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/15gw5emkw/' title='15gw5emkw'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/15gw5emkw-150x150.jpg" class="attachment-thumbnail" alt="15gw5emkw" title="15gw5emkw" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/02_venus/' title='02_venus'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/02_venus-150x150.jpg" class="attachment-thumbnail" alt="02_venus" title="02_venus" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-29/' title='Space 29'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-29-150x150.jpg" class="attachment-thumbnail" alt="Space 29" title="Space 29" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-15/' title='Space 15'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-15-150x150.jpg" class="attachment-thumbnail" alt="Space 15" title="Space 15" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/05a_io/' title='05a_io'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/05a_io-150x150.jpg" class="attachment-thumbnail" alt="05a_io" title="05a_io" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/05d_callisto/' title='05d_callisto'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/05d_callisto-150x150.jpg" class="attachment-thumbnail" alt="05d_callisto" title="05d_callisto" /></a>
<a href='http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/space-28/' title='Space 28'><img width="150" height="150" src="http://icetempest.com/wp-content/uploads/2010/04/Space-28-150x150.jpg" class="attachment-thumbnail" alt="Space 28" title="Space 28" /></a>

]]></content:encoded>
			<wfw:commentRss>http://icetempest.com/2010/04/wallpaper-of-the-week-iphone-space-wallpaper-collection/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Custom drawing UITableViewCell for iPhone</title>
		<link>http://icetempest.com/2010/04/custom-drawing-uitableviewcell-for-iphone/</link>
		<comments>http://icetempest.com/2010/04/custom-drawing-uitableviewcell-for-iphone/#comments</comments>
		<pubDate>Thu, 01 Apr 2010 13:20:09 +0000</pubDate>
		<dc:creator>Sergio Moura</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://icetempest.com/?p=148</guid>
		<description><![CDATA[I&#8217;m currently developing an iPhone application for interfacing with bit.ly and uiop.me sites. These sites provide resources for shortening urls and provide clicks and tweets statistics. For a better display of information, I was researching on how to do some custom table cell drawing using Interface Builder, and I found out that not many people [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m currently developing an iPhone application for interfacing with bit.ly and uiop.me sites. These sites provide resources for shortening urls and provide clicks and tweets statistics.</p>
<p>For a better display of information, I was researching on how to do some custom table cell drawing using Interface Builder, and I found out that not many people like it (don&#8217;t really get why, but I&#8217;m not going to dive into that just yet). Nevertheless, I&#8217;ve found two very good and detailed tutorials at the <a href="http://www.e-string.com/content/custom-uitableviewcells-interface-builder" target="_blank">E-String Technologies</a> site and <a href="http://chris-software.com/index.php/2009/05/05/tables/" target="_blank">Chris-Software.com</a>. Since I don&#8217;t like repeating what others have written so well, I&#8217;m providing here the links to their tutorials.</p>
]]></content:encoded>
			<wfw:commentRss>http://icetempest.com/2010/04/custom-drawing-uitableviewcell-for-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone weekly wallpaper</title>
		<link>http://icetempest.com/2010/03/iphone-weekly-wallpaper/</link>
		<comments>http://icetempest.com/2010/03/iphone-weekly-wallpaper/#comments</comments>
		<pubDate>Mon, 29 Mar 2010 17:53:13 +0000</pubDate>
		<dc:creator>Sergio Moura</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Wallpapers]]></category>
		<category><![CDATA[wallpaper]]></category>

		<guid isPermaLink="false">http://icetempest.com/?p=130</guid>
		<description><![CDATA[Hello! Every monday we&#8217;ll be featuring an iPhone Wallpaper. This week&#8217;s featured wallpaper is: This work was found here. It&#8217;s a beautiful abstract green wallpaper. Check out the website for more beautiful abstract iPhone wallpapers]]></description>
			<content:encoded><![CDATA[<p>Hello! Every monday we&#8217;ll be featuring an iPhone Wallpaper. This week&#8217;s featured wallpaper is:</p>
<p><a href="http://icetempest.com/wp-content/uploads/2010/03/lime_green_bubbles_iphone_wallpaper.jpg"><img class="aligncenter size-full wp-image-131" title="Lime Green Bubbles (iPhone wallpaper)" src="http://icetempest.com/wp-content/uploads/2010/03/lime_green_bubbles_iphone_wallpaper.jpg" alt="" width="320" height="480" /></a></p>
<p>This work was found <a href="http://www.appleiphonewallpapers.com/Abstract/lime_green_bubbles-44.html" target="_blank">here</a>. It&#8217;s a beautiful abstract green wallpaper. Check out the website for more beautiful abstract iPhone wallpapers</p>
]]></content:encoded>
			<wfw:commentRss>http://icetempest.com/2010/03/iphone-weekly-wallpaper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Learning to Search (+SQLite queries)</title>
		<link>http://icetempest.com/2010/03/learning-to-search/</link>
		<comments>http://icetempest.com/2010/03/learning-to-search/#comments</comments>
		<pubDate>Sun, 21 Mar 2010 21:01:33 +0000</pubDate>
		<dc:creator>Sergio Moura</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[cocoa]]></category>
		<category><![CDATA[macos]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://icetempest.com/?p=115</guid>
		<description><![CDATA[Hello, Today I&#8217;m starting to write tutorials for iPhone, starting with a simple thing that took me a while to learn. How to make simple searches for iPhone and display it promptly in the search result? All the commands and screenshots below were taken on a MacOS X 10.6.2 with XCode 3.2.1 and iPhoneOS SDK [...]]]></description>
			<content:encoded><![CDATA[<p>Hello,</p>
<p>Today I&#8217;m starting to write tutorials for iPhone, starting with a simple thing that took me a while to learn. How to make simple searches for iPhone and display it promptly in the search result?</p>
<p>All the commands and screenshots below were taken on a MacOS X 10.6.2 with XCode 3.2.1 and iPhoneOS SDK 3.1.2.</p>
<p>I started by creating a database with common people names. I&#8217;ve found some common american names for <a href="http://names.mongabay.com/male_names.htm" target="_blank">male</a> and <a href="http://names.mongabay.com/female_names.htm" target="_blank">female</a>, wich I got the first 50 of each one, making a simple SQLite table, that you can get it from <a href="http://icetempest.com/files/people_names.sqlite.zip">here</a> (zipped for convenience).</p>
<p><span id="more-115"></span></p>
<p>The SQLite table structure is quite simple: it contains only one table names &#8220;names&#8221; with only one field named &#8220;name&#8221; (If you use MacOS X, you can check out the program <a href="http://menial.co.uk/software/base/" target="_blank">Base</a> to see the table structure).</p>
<p>So, start by creating a new iPhone project on XCode (window only) and name it whatever you like (I named mine &#8220;LearningToSearch&#8221;).</p>
<p><a href="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-3.34.40-PM.png"><img class="aligncenter size-thumbnail wp-image-117" title="Create new Window-based iPhone application" src="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-3.34.40-PM-150x150.png" alt="" width="150" height="150" /></a></p>
<p>With our project created, we should add the sqlite3.dylib in our project, as we&#8217;re going to read the database from a sqlite database file. Control-click the Frameworks Folder -&gt; Add -&gt; Existing Framework. From the list, select libsqlite3.dylib.</p>
<p>With that done, let&#8217;s move on on creating a table for display our data, but we need to create a TableView. For that, Create a new file. Menu File -&gt; New File&#8230; -&gt; iPhone OS/Cocoa Touch Class -&gt; UIViewController Subclass. Be sure to mark both checkboxes on Options (UITableViewController subclass and With XIB for user interface, as you can see in the screenshot below).</p>
<p><a href="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-3.40.11-PM.png"><img class="aligncenter size-thumbnail wp-image-118" title="Create new TableView" src="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-3.40.11-PM-150x150.png" alt="" width="150" height="150" /></a>Name it whatever you like. I named mine &#8220;SearchView&#8221;. It will create 3 files for you with extensions h, m and xib. We&#8217;re going to need a pointer to the TableView when doing our search, so, let&#8217;s create an outlet for holding it. In your SearchView.h file (or whatever you named it), add a variable and a property, like so:</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #a61390;">@interface</span> SearchView <span style="color: #002200;">:</span> UITableViewController <span style="color: #002200;">&#123;</span>
	UITableView <span style="color: #002200;">*</span>myTableView;
<span style="color: #002200;">&#125;</span>
<span style="color: #a61390;">@property</span><span style="color: #002200;">&#40;</span>nonatomic,retain<span style="color: #002200;">&#41;</span> IBOutlet UITableView <span style="color: #002200;">*</span>myTableView;</pre></div></div>

<p>That will hold our pointer to our myTableView that we&#8217;ll setup later on Interface Builder. Synthesize the getters and setters by adding the following code on SearchView.m after the @implementation line:</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #a61390;">@synthesize</span> myTableView;</pre></div></div>

<p>That&#8217;s it for now. We&#8217;ll be back for them later, let&#8217;s now setup some properties on the main application, add a import directive for our SearchView.h and getters and setters for our SearchView controller like we did with the table view. On &#8220;LearningToSearchAppDelegate.h&#8221;:</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #6e371a;">#import &lt;UIKit/UIKit.h&gt;</span>
<span style="color: #6e371a;">#import &quot;SearchView.h&quot;</span>
&nbsp;
<span style="color: #a61390;">@interface</span> LearningToSearchAppDelegate <span style="color: #002200;">:</span> <span style="color: #400080;">NSObject</span> &lt;UIApplicationDelegate&gt; <span style="color: #002200;">&#123;</span>
    UIWindow <span style="color: #002200;">*</span>window;
    SearchView <span style="color: #002200;">*</span>viewController;
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #a61390;">@property</span> <span style="color: #002200;">&#40;</span>nonatomic, retain<span style="color: #002200;">&#41;</span> IBOutlet UIWindow <span style="color: #002200;">*</span>window;
<span style="color: #a61390;">@property</span> <span style="color: #002200;">&#40;</span>nonatomic, retain<span style="color: #002200;">&#41;</span> IBOutlet SearchView <span style="color: #002200;">*</span>viewController;
&nbsp;
<span style="color: #a61390;">@end</span></pre></div></div>

<p>With that, a synthesize in our .m file:</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #a61390;">@synthesize</span> viewController;</pre></div></div>

<p>That&#8217;s it we&#8217;ll come back later here too, but now let&#8217;s setup our interface.</p>
<p><strong>Setting up the interface</strong></p>
<p>Open MainWindow.xib in the Interface Builder (just double-click it).</p>
<p>You&#8217;ll get a blank interface screen with another window with 4 objects</p>
<p><a href="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-4.02.58-PM.png"><img src="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-4.02.58-PM-150x150.png" alt="" title="Blank Interface Builder window" width="150" height="150" class="aligncenter size-thumbnail wp-image-120" /></a><br />
<a href="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-4.02.54-PM.png"><img src="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-4.02.54-PM-150x150.png" alt="" title="Basic Interface Builder objects" width="150" height="150" class="aligncenter size-thumbnail wp-image-121" /></a></p>
<p>Next, we&#8217;ll add a UIViewController in our project. Select it and drag it along with the four other icons.</p>
<p>On &#8220;View Controller attributes&#8221; (Command-1) change NIB Name to &#8220;SearchView&#8221;<br />
<a href="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-5.09.08-PM.png"><img src="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-5.09.08-PM-150x150.png" alt="" title="Setting NIB Name" width="150" height="150" class="aligncenter size-thumbnail wp-image-122" /></a></p>
<p>And on &#8220;View Controller Identity&#8221; (Command-4), change the Class parameter to &#8220;Search View&#8221;<br />
<a href="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-5.11.04-PM.png"><img src="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-5.11.04-PM-150x150.png" alt="" title="Setup the Class Name" width="150" height="150" class="aligncenter size-thumbnail wp-image-123" /></a></p>
<p>Now, select &#8220;Learning To Search App Delegate&#8221; and link the viewController in the &#8220;Connection Inspectors&#8221; (Command-2) to the Search View Controller object.</p>
<p>We&#8217;re done with the main view. It does not much other then loading our SearchView. Save the file and open the &#8220;SearchView.xib&#8221; file. You&#8217;ll be presented with a table with some sample data.</p>
<p>Your window will have only three objects, the File&#8217;s Owner, First responder and Table View. We need to add a UISearchBar to the table. Just drag it from the Library to the Table. It&#8217;ll be positioned in the top of the table by default. Now, we just need to make two connections.</p>
<p>1) With the SearchBar selected, drag a link from &#8220;delegate&#8221; to the &#8220;File&#8217;s Owner&#8221; object. With this, we&#8217;re telling the SearchBar to send all events to our SearchView class.</p>
<p>2) With &#8220;File&#8217;s Owner&#8221; selected, drag a link from the &#8220;myTableView&#8221; outlet to the &#8220;Table View&#8221; object.</p>
<p>Our GUI setup is done. You can play around with the Search Bar parameters in the inspector, but nothing else is required for our sample to work.</p>
<p><strong>Setting up the code</strong></p>
<p>Now, to the code. We need to do some things:</p>
<p>1) Make our SearchView appear in the MainWindow (the links are set, but nobody told anyone to show it!);<br />
2) Load our database into an array;<br />
3) Setup the code for the table display our data<br />
4) Setup the search delegate (wich is the SearchView class) to understand and treat the Search Bar events.</p>
<p>Step 1:</p>
<p>This step is easy. Find the &#8220;LearningToSearchAppDelegate.m&#8221; file and add this line to the beggining of the &#8220;applicationDidFinishLaunching:&#8221; function:</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;">    <span style="color: #002200;">&#91;</span>window addSubview<span style="color: #002200;">:</span>viewController.view<span style="color: #002200;">&#93;</span>;</pre></div></div>

<p>Note: If you run your program now, you should see an empty table with a search bar on the top.</p>
<p>Step 2:</p>
<p>On to the database.</p>
<p>Create two NSMutableArray variables on the SearchView.h file. One that will hold all our names, the other that will hold our search result (include these inside the brackets on the interface declaration).</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;">	<span style="color: #400080;">NSMutableArray</span> <span style="color: #002200;">*</span>searchedNames;
	<span style="color: #400080;">NSMutableArray</span> <span style="color: #002200;">*</span>names;</pre></div></div>

<p>No need to setup getters and setters for these, as we&#8217;re only going to use tem internally. We need to initialize our variables before we can use them. For that, we add the following lines in the &#8220;viewDidLoad&#8221; function (in the end of the function):</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;">	names <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span><span style="color: #400080;">NSMutableArray</span> alloc<span style="color: #002200;">&#93;</span> init<span style="color: #002200;">&#93;</span>;
	searchedNames <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span><span style="color: #400080;">NSMutableArray</span> alloc<span style="color: #002200;">&#93;</span> init<span style="color: #002200;">&#93;</span>;</pre></div></div>

<p>Now, to the hard part: Load the database and store all the data inside the names variable.<br />
Actually, that&#8217;s not hard at all, just copy that (hopefully documented) function below and place it in your SearchView implementation (no need to declare it on our header file, since we&#8217;re only going to use it internally):</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
</pre></td><td class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #002200;">-</span><span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>loadNames <span style="color: #002200;">&#123;</span>
	<span style="color: #11740a; font-style: italic;">// Path to the database</span>
	<span style="color: #400080;">NSString</span><span style="color: #002200;">*</span> dbPath <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span><span style="color: #400080;">NSBundle</span> mainBundle<span style="color: #002200;">&#93;</span> resourcePath<span style="color: #002200;">&#93;</span> stringByAppendingPathComponent<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;people_names.sqlite&quot;</span><span style="color: #002200;">&#93;</span>;
	NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;databasePath: %@&quot;</span>,dbPath<span style="color: #002200;">&#41;</span>;
	sqlite3 <span style="color: #002200;">*</span>database;
	<span style="color: #400080;">NSString</span> <span style="color: #002200;">*</span>name;
&nbsp;
	<span style="color: #11740a; font-style: italic;">// Open the database</span>
	<span style="color: #a61390;">if</span> <span style="color: #002200;">&#40;</span>sqlite3_open<span style="color: #002200;">&#40;</span><span style="color: #002200;">&#91;</span>dbPath UTF8String<span style="color: #002200;">&#93;</span>, <span style="color: #002200;">&amp;</span>database<span style="color: #002200;">&#41;</span> <span style="color: #002200;">==</span> SQLITE_OK<span style="color: #002200;">&#41;</span> <span style="color: #002200;">&#123;</span>
		<span style="color: #a61390;">const</span> <span style="color: #a61390;">char</span> <span style="color: #002200;">*</span>sql <span style="color: #002200;">=</span> <span style="color: #bf1d1a;">&quot;SELECT * FROM names&quot;</span>;
		sqlite3_stmt <span style="color: #002200;">*</span>compiledStmt;
		<span style="color: #11740a; font-style: italic;">// Fetch all names</span>
		<span style="color: #a61390;">if</span> <span style="color: #002200;">&#40;</span>sqlite3_prepare_v2<span style="color: #002200;">&#40;</span>database, sql, <span style="color: #002200;">-</span><span style="color: #2400d9;">1</span>, <span style="color: #002200;">&amp;</span>compiledStmt, <span style="color: #a61390;">NULL</span><span style="color: #002200;">&#41;</span> <span style="color: #002200;">==</span> SQLITE_OK<span style="color: #002200;">&#41;</span> <span style="color: #002200;">&#123;</span>
			<span style="color: #11740a; font-style: italic;">// Append each name</span>
			<span style="color: #a61390;">while</span> <span style="color: #002200;">&#40;</span>sqlite3_step<span style="color: #002200;">&#40;</span>compiledStmt<span style="color: #002200;">&#41;</span> <span style="color: #002200;">==</span> SQLITE_ROW<span style="color: #002200;">&#41;</span> <span style="color: #002200;">&#123;</span>
				<span style="color: #a61390;">const</span> <span style="color: #a61390;">char</span><span style="color: #002200;">*</span> cName <span style="color: #002200;">=</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">char</span><span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>sqlite3_column_text<span style="color: #002200;">&#40;</span>compiledStmt, <span style="color: #2400d9;">0</span><span style="color: #002200;">&#41;</span>;
				<span style="color: #a61390;">if</span> <span style="color: #002200;">&#40;</span>cName <span style="color: #002200;">==</span> <span style="color: #a61390;">NULL</span><span style="color: #002200;">&#41;</span>
					<span style="color: #11740a; font-style: italic;">// There should not be a NULL name</span>
					NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Null name!!&quot;</span><span style="color: #002200;">&#41;</span>;
				<span style="color: #a61390;">else</span> <span style="color: #002200;">&#123;</span>
					name <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #400080;">NSString</span> stringWithUTF8String<span style="color: #002200;">:</span>cName<span style="color: #002200;">&#93;</span>;
					<span style="color: #002200;">&#91;</span>names addObject<span style="color: #002200;">:</span>name<span style="color: #002200;">&#93;</span>;
					<span style="color: #11740a; font-style: italic;">// Apparently the addObject function in NSMutableArray does not</span>
					<span style="color: #11740a; font-style: italic;">// keep a copy of our object, so, we can't release it.</span>
					<span style="color: #11740a; font-style: italic;">//[name release];</span>
				<span style="color: #002200;">&#125;</span>
			<span style="color: #002200;">&#125;</span>
			sqlite3_finalize<span style="color: #002200;">&#40;</span>compiledStmt<span style="color: #002200;">&#41;</span>; <span style="color: #11740a; font-style: italic;">// Cleanup the statement</span>
		<span style="color: #002200;">&#125;</span>
		<span style="color: #a61390;">else</span> <span style="color: #002200;">&#123;</span>
			NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Error retrieving data from database.&quot;</span><span style="color: #002200;">&#41;</span>;
		<span style="color: #002200;">&#125;</span>
		sqlite3_close<span style="color: #002200;">&#40;</span>database<span style="color: #002200;">&#41;</span>;
	<span style="color: #002200;">&#125;</span>
	<span style="color: #a61390;">else</span> <span style="color: #002200;">&#123;</span>
		NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Error: Can't open database!&quot;</span><span style="color: #002200;">&#41;</span>;
	<span style="color: #002200;">&#125;</span>
<span style="color: #002200;">&#125;</span></pre></td></tr></table></div>

<p>Great! Now what about the database file? If you compile it as it is now, you&#8217;ll not read anything since our database is nowhere to be found. Drag the (unzipped) people_names.sqlite file to the &#8220;Resources&#8221; folder in XCode.</p>
<p>One more thing until we&#8217;re done with the SQLite part: we need to call our &#8220;loadNames&#8221; function. We&#8217;re going to alter our &#8220;viewDidLoad&#8221; function again. It&#8217;ll be like this:</p>

<div class="wp_syntax"><div class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>viewDidLoad <span style="color: #002200;">&#123;</span>
    <span style="color: #002200;">&#91;</span>super viewDidLoad<span style="color: #002200;">&#93;</span>;
&nbsp;
	names <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span><span style="color: #400080;">NSMutableArray</span> alloc<span style="color: #002200;">&#93;</span> init<span style="color: #002200;">&#93;</span>;
	searchedNames <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span><span style="color: #400080;">NSMutableArray</span> alloc<span style="color: #002200;">&#93;</span> init<span style="color: #002200;">&#93;</span>;
	<span style="color: #002200;">&#91;</span>self loadNames<span style="color: #002200;">&#93;</span>;
<span style="color: #002200;">&#125;</span></pre></div></div>

<p>Step 3:</p>
<p>Now we need to make our class respond to the TableView calls. Since we&#8217;re using the &#8220;searchedNames&#8221; array to store our data, we need to make sure we return the information from there. The TableView calls are quite self-explanatory, so, here goes:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
</pre></td><td class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #6e371a;">#pragma mark Table view methods</span>
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span>NSInteger<span style="color: #002200;">&#41;</span>numberOfSectionsInTableView<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>UITableView <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>tableView <span style="color: #002200;">&#123;</span>
	<span style="color: #a61390;">return</span><span style="color: #002200;">&#40;</span><span style="color: #2400d9;">1</span><span style="color: #002200;">&#41;</span>;
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span>NSInteger<span style="color: #002200;">&#41;</span>tableView<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>UITableView <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>tableView numberOfRowsInSection<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>NSInteger<span style="color: #002200;">&#41;</span>section <span style="color: #002200;">&#123;</span>
	<span style="color: #a61390;">return</span><span style="color: #002200;">&#40;</span><span style="color: #002200;">&#91;</span>searchedNames count<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span>UITableViewCell <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>tableView<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>UITableView <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>tableView cellForRowAtIndexPath<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span><span style="color: #400080;">NSIndexPath</span> <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>indexPath <span style="color: #002200;">&#123;</span>
    <span style="color: #a61390;">static</span> <span style="color: #400080;">NSString</span> <span style="color: #002200;">*</span>CellIdentifier <span style="color: #002200;">=</span> <span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Cell&quot;</span>;
&nbsp;
    UITableViewCell <span style="color: #002200;">*</span>cell <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>tableView dequeueReusableCellWithIdentifier<span style="color: #002200;">:</span>CellIdentifier<span style="color: #002200;">&#93;</span>;
    <span style="color: #a61390;">if</span> <span style="color: #002200;">&#40;</span>cell <span style="color: #002200;">==</span> <span style="color: #a61390;">nil</span><span style="color: #002200;">&#41;</span> <span style="color: #002200;">&#123;</span>
        cell <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span>UITableViewCell alloc<span style="color: #002200;">&#93;</span> initWithStyle<span style="color: #002200;">:</span>UITableViewCellStyleDefault reuseIdentifier<span style="color: #002200;">:</span>CellIdentifier<span style="color: #002200;">&#93;</span> autorelease<span style="color: #002200;">&#93;</span>;
    <span style="color: #002200;">&#125;</span>
&nbsp;
    <span style="color: #11740a; font-style: italic;">// Set up the cell...</span>
    <span style="color: #400080;">NSString</span> <span style="color: #002200;">*</span>cellText <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>searchedNames objectAtIndex<span style="color: #002200;">:</span>indexPath.row<span style="color: #002200;">&#93;</span>;
    <span style="color: #002200;">&#91;</span>cell.textLabel setText<span style="color: #002200;">:</span>cellText<span style="color: #002200;">&#93;</span>;
&nbsp;
    <span style="color: #a61390;">return</span> cell;
<span style="color: #002200;">&#125;</span></pre></td></tr></table></div>

<p>In short:<br />
* We have only one section<br />
* The number of lines is the same number of the searchedNames stored objects<br />
* When the table asks for a cell, we get the name of the object on the searchedNames and put it in the cell</p>
<p>Step 4:</p>
<p>Now to the sweet part. We need to answer the calls from the SearchBar. We want the &#8220;Search as we type&#8221; kind.</p>
<p>Here&#8217;s our full code:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
</pre></td><td class="code"><pre class="objc" style="font-family:monospace;"><span style="color: #6e371a;">#pragma mark Search Functions</span>
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>searchBarTextDidBeginEditing<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>UISearchBar <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>searchBar <span style="color: #002200;">&#123;</span>
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>searchBarTextDidEndEditing<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>UISearchBar <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>searchBar <span style="color: #002200;">&#123;</span>
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>searchBar<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>UISearchBar <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>searchBar textDidChange<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span><span style="color: #400080;">NSString</span> <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>searchText <span style="color: #002200;">&#123;</span>
	<span style="color: #002200;">&#91;</span>searchedNames removeAllObjects<span style="color: #002200;">&#93;</span>;<span style="color: #11740a; font-style: italic;">// remove all data that belongs to previous search</span>
	<span style="color: #a61390;">if</span><span style="color: #002200;">&#40;</span><span style="color: #002200;">&#91;</span>searchText isEqualToString<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;&quot;</span><span style="color: #002200;">&#93;</span> || searchText<span style="color: #002200;">==</span><span style="color: #a61390;">nil</span><span style="color: #002200;">&#41;</span> <span style="color: #002200;">&#123;</span>
		<span style="color: #11740a; font-style: italic;">// Nothing to search, empty result.</span>
		<span style="color: #002200;">&#91;</span>myTableView reloadData<span style="color: #002200;">&#93;</span>;
		<span style="color: #a61390;">return</span>;
	<span style="color: #002200;">&#125;</span>
&nbsp;
	<span style="color: #a61390;">for</span> <span style="color: #002200;">&#40;</span><span style="color: #400080;">NSString</span> <span style="color: #002200;">*</span>name <span style="color: #a61390;">in</span> names<span style="color: #002200;">&#41;</span> <span style="color: #002200;">&#123;</span>
		<span style="color: #a61390;">NSRange</span> r <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>name rangeOfString<span style="color: #002200;">:</span>searchText options<span style="color: #002200;">:</span>NSCaseInsensitiveSearch<span style="color: #002200;">&#93;</span>;
		<span style="color: #a61390;">if</span><span style="color: #002200;">&#40;</span>r.location <span style="color: #002200;">!=</span> NSNotFound<span style="color: #002200;">&#41;</span> <span style="color: #002200;">&#123;</span>
			<span style="color: #002200;">&#91;</span>searchedNames addObject<span style="color: #002200;">:</span>name<span style="color: #002200;">&#93;</span>;
		<span style="color: #002200;">&#125;</span>
	<span style="color: #002200;">&#125;</span>
	<span style="color: #002200;">&#91;</span>myTableView reloadData<span style="color: #002200;">&#93;</span>;	
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>searchBarCancelButtonClicked<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>UISearchBar <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>searchBar <span style="color: #002200;">&#123;</span>
<span style="color: #002200;">&#125;</span>
&nbsp;
<span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span>searchBarSearchButtonClicked<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>UISearchBar <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>searchBar <span style="color: #002200;">&#123;</span>
	<span style="color: #002200;">&#91;</span>searchBar resignFirstResponder<span style="color: #002200;">&#93;</span>;
<span style="color: #002200;">&#125;</span></pre></td></tr></table></div>

<p>Now, we don&#8217;t care when the user begin editing, ends editing or clicks the cancel button. We don&#8217;t really have a cancel button (unless you changed that), and we are using &#8220;on-the-go&#8221; searching.</p>
<p>The last function is important to make room when the user finishes searching. It disposes of the keyboard.</p>
<p>The &#8220;searchBar:textDidChange:&#8221; function is where we do our hardwork. We search in every item of our &#8220;names&#8221; arrange for an occurrence of the text in the SearchBar. Passing the option &#8220;NSCaseInsensitiveSearch&#8221;, we don&#8217;t mind for lower-case or upper-case letters.</p>
<p><strong>We&#8217;re done!</strong></p>
<p>Compile your project.</p>
<p>Check it our in your simulator.</p>
<p><a href="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-6.00.15-PM.png"><img src="http://icetempest.com/wp-content/uploads/2010/03/Screen-shot-2010-03-21-at-6.00.15-PM-161x300.png" alt="" title="We&#039;re done" width="161" height="300" class="aligncenter size-medium wp-image-125" /></a></p>
<p>Put it on your iPhone to play around on-the-go (if you have the license).</p>
<p>It took me a lot of searching to learn to do those, I hope you have less pain than me. Be sure to drop me a note if you have any questions.</p>
<p>Until next time!</p>
]]></content:encoded>
			<wfw:commentRss>http://icetempest.com/2010/03/learning-to-search/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

