<?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>Notes of a Developer &#187; iPad</title>
	<atom:link href="http://www.developers-life.com/category/apple/ipad/feed" rel="self" type="application/rss+xml" />
	<link>http://www.developers-life.com</link>
	<description>Develop on Objective-C, UIKit, C, OpenGL for  iPhone, iPad, Mac OS X</description>
	<lastBuildDate>Sun, 05 Sep 2010 16:29:15 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Эксперемент</title>
		<link>http://www.developers-life.com/an-experiment.html</link>
		<comments>http://www.developers-life.com/an-experiment.html#comments</comments>
		<pubDate>Sun, 13 Jun 2010 18:54:48 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Jailbreak]]></category>
		<category><![CDATA[OS]]></category>
		<category><![CDATA[Private]]></category>
		<category><![CDATA[xCode]]></category>
		<category><![CDATA[Кодинг]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=1045</guid>
		<description><![CDATA[     Написал простенькую программку ради эксперимента. С помощью программы можно ходит по корневому разделу системы, без Jailbreak. Если кто-то имеет опыт как создать фаил в директории не принадлежащей программе,  без взлома устройства, и поделится! Буду очень признателен!

И собственно сам код
]]></description>
			<content:encoded><![CDATA[<p>     Написал простенькую программку ради эксперимента. С помощью программы можно ходит по корневому разделу системы, без Jailbreak. Если кто-то имеет опыт как создать фаил в директории не принадлежащей программе,  без взлома устройства, и поделится! Буду очень признателен!</p>
<p><a href="http://www.developers-life.com/wp-content/uploads/2010/06/photo.PNG" target="_blank"><img class="alignnone size-medium wp-image-1046" title="photo" src="http://www.developers-life.com/wp-content/uploads/2010/06/photo-225x300.PNG" alt="photo" width="158" height="210" /></a></p>
<p>И собственно <a href="http://depositfiles.com/files/t9uviw3z0" target="_blank">сам код</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/an-experiment.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>UIImage and Memory</title>
		<link>http://www.developers-life.com/uiimage-and-memory.html</link>
		<comments>http://www.developers-life.com/uiimage-and-memory.html#comments</comments>
		<pubDate>Thu, 10 Jun 2010 11:43:22 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[OOP]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Memory]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[UIImage]]></category>
		<category><![CDATA[UIKit]]></category>
		<category><![CDATA[Ukraine]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[Кодинг]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=1023</guid>
		<description><![CDATA[+[UIImage imageNamed:]
• Reads the ﬁle, uncompresses it, caches result
• Cached copy of data is kept even if the UIImage is deallocated
• Low memory condition causes cache to be purged.
• No direct control over when cache is purged.
• Use for small frequently drawn images.
+[UIImage imageWithContentsOfFile:]
• Just reads enough of ﬁle to determine if it can open [...]]]></description>
			<content:encoded><![CDATA[<p>+[UIImage imageNamed:]<br />
• Reads the ﬁle, uncompresses it, caches result<br />
• Cached copy of data is kept even if the UIImage is deallocated<br />
• Low memory condition causes cache to be purged.<br />
• No direct control over when cache is purged.<br />
• Use for small frequently drawn images.</p>
<p>+[UIImage imageWithContentsOfFile:]<br />
• Just reads enough of ﬁle to determine if it can open the ﬁle.<br />
• Reads and uncompresses the ﬁle each time it draws. Uses uncompressed size worth of memory only temporarily.<br />
• Assigning a UIImage created this way to a UIImageView or as the contents of a CALayer also causes it to read and uncompress the ﬁle. The UIImageView or CALayer keep the expanded version.<br />
<span id="more-1023"></span><br />
Memory Usage (in MB) 8.6 MB image used with UIImageView</p>
<table border="0" style="filter:none;font-size:12pt; border: 1px solid;">
<tr>
<td></td>
<td >imageNamed</td>
<td >imageWithContentsofFile</td>
</tr>
<tr>
<td >Initial</td>
<td>2.46</td>
<td>2.46</td>
</tr>
<tr>
<td>Load UIImage</td>
<td>11.12</td>
<td>2.51</td>
</tr>
<tr>
<td>Assign to UIImageView</td>
<td>11.09</td>
<td>11.09</td>
</tr>
<tr>
<td>Remove from UIImageView</td>
<td>11.12</td>
<td>2.51</td>
</tr>
</table>
<p>Memory Usage (in MB) 8.6 MB image used with UIView subclass (stored in instance variable and drawn with drawinRect: )</p>
<table border="0" style="filter:none; border: 1px solid;">
<tbody>
<tr>
<td></td>
<td>imageNamed</td>
<td>imageWithContentsofFile</td>
</tr>
<tr>
<td>Initial</td>
<td>2.73</td>
<td>2.73</td>
</tr>
<tr>
<td>Load UIImage</td>
<td>11.38</td>
<td>2.78</td>
</tr>
<tr>
<td>Assign to UIImageView</td>
<td>11.81</td>
<td>3.20</td>
</tr>
<tr>
<td>Remove from UIImageView</td>
<td>11.84</td>
<td>3.04</td>
</tr>
</tbody>
</table>
<p>Спасибо за некоторые пояснения Андрею Копаневу :)</p>
<p><a href="https://docs.google.com/fileview?id=0B2KSahvz-4DXOTFhM2Y5MzQtODkyZC00N2ExLWE0MWQtNjI2N2NiYTBkNzZh&amp;hl=ru">И вот этому документу</a> &#8211; Robert Clair</p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/uiimage-and-memory.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone 3D Samples from &#8220;iPhone 3D Programming&#8221; book</title>
		<link>http://www.developers-life.com/iphone-3d-samples.html</link>
		<comments>http://www.developers-life.com/iphone-3d-samples.html#comments</comments>
		<pubDate>Wed, 09 Jun 2010 13:35:34 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Book]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[ES 2.0]]></category>
		<category><![CDATA[OpenGL]]></category>
		<category><![CDATA[Кодинг]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=1010</guid>
		<description><![CDATA[iPhone 3D Samples from &#8220;iPhone 3D Programming Developing Graphical Applications with OpenGL ES&#8221; book.
Thanks Frank and Doris Rideout and O&#8217;REILLY
31 iPhone 3D Samples OpenGL ES 1.1 and 2.0

All links direct to http://examples.oreilly.com/
All Samples
HelloArrow


HelloCone

TouchCone

ModelViewer.SimpleWireframe

ModelViewer.VertexLighting

ModelViewer.PixelLighting

ModelViewer.ToonLighting

ModelViewer.FancyWireframe

ModelViewer.ObjViewer

ModelViewer.Textured

TextureFilters

TextureFormats

CameraTexture

TextureAlpha

Trefoil.Stencil

Trefoil.FakeStencil

Trefoil.Antialiasing

Trefoil.Jitter

AaLines

Holodeck.Clouds

Holodeck.Camera

Klein.Fps

Haiku

DistanceField

SpriteSheet

SpringyStars

Klein.Bumpy

Klein.Cubemap

CrudeBloom

GaussianBloom

VertexSkinning


]]></description>
			<content:encoded><![CDATA[<p>iPhone 3D Samples from &#8220;iPhone 3D Programming Developing Graphical Applications with OpenGL ES&#8221; book.<br />
Thanks Frank and Doris Rideout and O&#8217;REILLY</p>
<p>31 iPhone 3D Samples OpenGL ES 1.1 and 2.0</p>
<p><noindex><br />
All links direct to http://examples.oreilly.com/</p>
<p><a href="http://depositfiles.com/files/8cy4ofx7u" target="blank">All Samples</a></p>
<h2>HelloArrow<a href="http://examples.oreilly.com/9780596804831/HelloArrow" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/HelloArrow/Screenshot.png" alt="" /></a></h2>
<p><span id="more-1010"></span></p>
<h2>HelloCone<a href="http://examples.oreilly.com/9780596804831/HelloCone" target="blank"></p>
<p><img src="http://examples.oreilly.com/9780596804831/HelloCone/Screenshot.png" alt="" /></a></h2>
<h2 id="TouchCone">TouchCone<a href="http://examples.oreilly.com/9780596804831/TouchCone" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/TouchCone/Screenshot.png" alt="" /></a></h2>
<h2 id="ModelViewer.SimpleWireframe">ModelViewer.SimpleWireframe<a href="http://examples.oreilly.com/9780596804831/ModelViewer.SimpleWireframe" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/ModelViewer.SimpleWireframe/Screenshot.png" alt="" /></a></h2>
<h2 id="ModelViewer.VertexLighting">ModelViewer.VertexLighting<a href="http://examples.oreilly.com/9780596804831/ModelViewer.VertexLighting" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/ModelViewer.VertexLighting/Screenshot.png" alt="" /></a></h2>
<h2 id="ModelViewer.PixelLighting">ModelViewer.PixelLighting<a href="http://examples.oreilly.com/9780596804831/ModelViewer.PixelLighting" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/ModelViewer.PixelLighting/Screenshot.png" alt="" /></a></h2>
<h2 id="ModelViewer.ToonLighting">ModelViewer.ToonLighting<a href="http://examples.oreilly.com/9780596804831/ModelViewer.ToonLighting" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/ModelViewer.ToonLighting/Screenshot.png" alt="" /></a></h2>
<h2 id="ModelViewer.FancyWireframe">ModelViewer.FancyWireframe<a href="http://examples.oreilly.com/9780596804831/ModelViewer.FancyWireframe" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/ModelViewer.FancyWireframe/Screenshot.png" alt="" /></a></h2>
<h2>ModelViewer.ObjViewer<a href="http://examples.oreilly.com/9780596804831/ModelViewer.ObjViewer" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/ModelViewer.ObjViewer/Screenshot.png" alt="" /></a></h2>
<h2 id="ModelViewer.Textured">ModelViewer.Textured<a href="http://examples.oreilly.com/9780596804831/ModelViewer.Textured" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/ModelViewer.Textured/Screenshot.png" alt="" /></a></h2>
<h2 id="TextureFilters">TextureFilters<a href="http://examples.oreilly.com/9780596804831/TextureFilters" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/TextureFilters/Screenshot.png" alt="" /></a></h2>
<h2 id="TextureFormats">TextureFormats<a href="http://examples.oreilly.com/9780596804831/TextureFormats" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/TextureFormats/Screenshot.png" alt="" /></a></h2>
<h2 id="CameraTexture">CameraTexture<a href="http://examples.oreilly.com/9780596804831/CameraTexture" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/CameraTexture/Screenshot.png" alt="" /></a></h2>
<h2 id="TextureAlpha">TextureAlpha<a href="http://examples.oreilly.com/9780596804831/TextureAlpha" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/TextureAlpha/Screenshot.png" alt="" /></a></h2>
<h2 id="Trefoil.Stencil">Trefoil.Stencil<a href="http://examples.oreilly.com/9780596804831/Trefoil.Stencil" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/Trefoil.Stencil/Screenshot.png" alt="" /></a></h2>
<h2 id="Trefoil.FakeStencil">Trefoil.FakeStencil<a href="http://examples.oreilly.com/9780596804831/Trefoil.FakeStencil" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/Trefoil.FakeStencil/Screenshot.png" alt="" /></a></h2>
<h2 id="Trefoil.Antialiasing">Trefoil.Antialiasing<a href="http://examples.oreilly.com/9780596804831/Trefoil.Antialiasing" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/Trefoil.Antialiasing/Screenshot.png" alt="" /></a></h2>
<h2 id="Trefoil.Jitter">Trefoil.Jitter<a href="http://examples.oreilly.com/9780596804831/Trefoil.Jitter" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/Trefoil.Jitter/Screenshot.png" alt="" /></a></h2>
<h2 id="AaLines">AaLines<a href="http://examples.oreilly.com/9780596804831/AaLines" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/AaLines/Screenshot.png" alt="" /></a></h2>
<h2 id="Holodeck.Clouds">Holodeck.Clouds<a href="http://examples.oreilly.com/9780596804831/Holodeck.Clouds" target="blank"><br />
<img style="width: 240px;" src="http://examples.oreilly.com/9780596804831/Holodeck.Clouds/Screenshot.png" alt="" /></a></h2>
<h2 id="Holodeck.Camera">Holodeck.Camera<a href="http://examples.oreilly.com/9780596804831/Holodeck.Camera" target="blank"><br />
<img style="width: 240px;" src="http://examples.oreilly.com/9780596804831/Holodeck.Camera/Screenshot.png" alt="" /></a></h2>
<h2 id="Klein.Fps">Klein.Fps<a href="http://examples.oreilly.com/9780596804831/Klein.Fps" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/Klein.Fps/Screenshot.png" alt="" /></a></h2>
<h2 id="Haiku">Haiku<a href="http://examples.oreilly.com/9780596804831/Haiku" target="blank"><br />
<img style="width: 240px;" src="http://examples.oreilly.com/9780596804831/Haiku/Screenshot.png" alt="" /></a></h2>
<h2 id="DistanceField">DistanceField<a href="http://examples.oreilly.com/9780596804831/DistanceField" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/DistanceField/Screenshot.png" alt="" /></a></h2>
<h2 id="SpriteSheet">SpriteSheet<a href="http://examples.oreilly.com/9780596804831/SpriteSheet" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/SpriteSheet/Screenshot.png" alt="" /></a></h2>
<h2 id="SpringyStars">SpringyStars<a href="http://examples.oreilly.com/9780596804831/SpringyStars" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/SpringyStars/Screenshot.png" alt="" /></a></h2>
<h2 id="Klein.Bumpy">Klein.Bumpy<a href="http://examples.oreilly.com/9780596804831/Klein.Bumpy" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/Klein.Bumpy/Screenshot.png" alt="" /></a></h2>
<h2 id="Klein.Cubemap">Klein.Cubemap<a href="http://examples.oreilly.com/9780596804831/Klein.Cubemap" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/Klein.Cubemap/Screenshot.png" alt="" /></a></h2>
<h2 id="CrudeBloom">CrudeBloom<a href="http://examples.oreilly.com/9780596804831/CrudeBloom" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/CrudeBloom/Screenshot.png" alt="" /></a></h2>
<h2 id="GaussianBloom">GaussianBloom<a href="http://examples.oreilly.com/9780596804831/GaussianBloom" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/GaussianBloom/Screenshot.png" alt="" /></a></h2>
<h2 id="VertexSkinning">VertexSkinning<a href="http://examples.oreilly.com/9780596804831/VertexSkinning" target="blank"><br />
<img src="http://examples.oreilly.com/9780596804831/VertexSkinning/Screenshot.png" alt="" /></a></h2>
<p></noindex></p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/iphone-3d-samples.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Good book!</title>
		<link>http://www.developers-life.com/good-book.html</link>
		<comments>http://www.developers-life.com/good-book.html#comments</comments>
		<pubDate>Tue, 08 Jun 2010 21:04:05 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Book]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[OpenGL]]></category>
		<category><![CDATA[Кодинг]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=999</guid>
		<description><![CDATA[Do you have a great idea for a graphics-intensive iPhone or iPad application, but don&#8217;t know how to bring it to life? This book offers the perfect solution: a crash course on the OpenGL graphics library with an overview of iPhone 3D development. Whether you&#8217;re an experienced OpenGL developer looking to build iPhone apps for [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" src="http://covers.oreilly.com/images/9780596804831/cat.gif" alt="" width="180" height="236" />Do you have a great idea for a graphics-intensive iPhone or iPad application, but don&#8217;t know how to bring it to life? This book offers the perfect solution: a crash course on the OpenGL graphics library with an overview of iPhone 3D development. Whether you&#8217;re an experienced OpenGL developer looking to build iPhone apps for the first time, or an iPhone developer wanting to learn sophisticated graphics, iPhone 3D Programming addresses both in one concise, easy-to-use guide.</p>
<p>What does it take to build an iPhone app with stunning 3D graphics? This book will show you how to apply OpenGL graphics programming techniques to any device running the iPhone OS &#8212; including the iPad and iPod Touch &#8212; with no iPhone development or 3D graphics experience required. iPhone 3D Programming provides clear step-by-step instructions, as well as lots of practical advice, for using the iPhone SDK and OpenGL.<br />
<span id="more-999"></span><br />
You&#8217;ll build several graphics programs &#8212; progressing from simple to more complex examples &#8212; that focus on lighting, textures, blending, augmented reality, optimization for performance and speed, and much more. All you need to get started is a solid understanding of C++ and a great idea for an app.</p>
<p>    * Learn fundamental graphics concepts, including transformation matrices, quaternions, and more<br />
    * Get set up for iPhone development with the Xcode environment<br />
    * Become familiar with versions 1.1 and 2.0 of the OpenGL ES API, and learn to use vertex buffer objects, lighting, texturing, and shaders<br />
    * Use the iPhone&#8217;s touch screen, compass, and accelerometer to build interactivity into graphics applications<br />
    * Build iPhone graphics applications such as a 3D wireframe viewer, a simple augmented reality application, a spring system simulation, and more</p>
<p>This book received valuable community input through O&#8217;Reilly&#8217;s Open Feedback Publishing System (OFPS). Learn more at </p>
<p><noindex><a href="http://oreilly.com/catalog/9780596804831" target="blank">Buy Book</a></p>
<p><a href="http://iphone-3d-programming.labs.oreilly.com/" target="blank">Free for online read</a></p>
<p></noindex></p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/good-book.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>купил iPad :)</title>
		<link>http://www.developers-life.com/%d0%ba%d1%83%d0%bf%d0%b8%d0%bb-ipad.html</link>
		<comments>http://www.developers-life.com/%d0%ba%d1%83%d0%bf%d0%b8%d0%bb-ipad.html#comments</comments>
		<pubDate>Sun, 06 Jun 2010 15:26:14 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[Magic Mouse]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/%d0%ba%d1%83%d0%bf%d0%b8%d0%bb-ipad.html</guid>
		<description><![CDATA[Как вы уже поняли речь пойдет про iPad :) Девайс удобный и очень впечетляющий, но все же напоминает большой айпод тач. Огорчает отсутствие камеры. В целом ничего особенного, беру его в руки в основном когда нужно работать или почитать письма и посерфить немного.
На последней фотографии видно как отлично можно использовать устройство для презентаций. Этот пост [...]]]></description>
			<content:encoded><![CDATA[<p>Как вы уже поняли речь пойдет про iPad :) Девайс удобный и очень впечетляющий, но все же напоминает большой айпод тач. Огорчает отсутствие камеры. В целом ничего особенного, беру его в руки в основном когда нужно работать или почитать письма и посерфить немного.</p>
<p>На последней фотографии видно как отлично можно использовать устройство для презентаций. Этот пост я писал с iPad, не очень удобно, думаю будет удобнее если подсоединить клавиатуру.</p>
<p><a href="http://www.developers-life.com/wp-content/uploads/2010/06/l_2048_1536_17911E9C-4411-46CD-89C0-0987DC2D5BEC.jpeg"><img class="alignnone size-full" src="http://www.developers-life.com/wp-content/uploads/2010/06/l_2048_1536_17911E9C-4411-46CD-89C0-0987DC2D5BEC.jpeg" alt="" width="384" height="288" /></a></p>
<p><span id="more-995"></span></p>
<p><a href="http://www.developers-life.com/wp-content/uploads/2010/06/p_2048_1536_61B6BAAD-C496-4E65-8601-CF090F24C6F5.jpeg"><img class="alignnone size-full" src="http://www.developers-life.com/wp-content/uploads/2010/06/p_2048_1536_61B6BAAD-C496-4E65-8601-CF090F24C6F5.jpeg" alt="" width="336" height="448" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/%d0%ba%d1%83%d0%bf%d0%b8%d0%bb-ipad.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Make gradient on iPhone/iPad</title>
		<link>http://www.developers-life.com/make-gradient-on-iphoneipad.html</link>
		<comments>http://www.developers-life.com/make-gradient-on-iphoneipad.html#comments</comments>
		<pubDate>Sun, 30 May 2010 18:57:09 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Gradient]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[UIKit]]></category>
		<category><![CDATA[UITabBar]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=983</guid>
		<description><![CDATA[It&#8217;s easy! As of iPhone SDK 3.0, custom gradients can be implemented very easily,  without subclassing or images, by using the new CAGradientLayer
add framework
#import &#60; QuartzCore/QuartzCore.h&#62;

so, example:


or
UIView *myTabView = &#91;&#91;UIView alloc&#93; initWithFrame:frame&#93;;
&#160; &#160; CAGradientLayer *gradient = &#91;CAGradientLayer layer&#93;;
&#160; &#160; gradient.frame = myTabView.bounds;
&#160; &#160; gradient.colors = &#91;NSArray arrayWithObjects:
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s easy! As of iPhone SDK 3.0, custom gradients can be implemented very easily,  without subclassing or images, by using the new CAGradientLayer</p>
<p>add framework</p>
<div class="codecolorer-container objc" style="height:35px;"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="co1">#import &lt; QuartzCore/QuartzCore.h&gt;</span></div></li>
</ol></div></div>
<p>so, example:</p>
<p><a href="http://gyazo.com/7c6b82b7e31568c52a4b267e4f91c78b.png" target="_blank"><img class="alignnone" title="make custom gradient on iPhone, iPad" src="http://gyazo.com/7c6b82b7e31568c52a4b267e4f91c78b.png" alt="" width="448" height="160" /></a><br />
<span id="more-983"></span><br />
or</p>
<div class="codecolorer-container objc"><div class="objc codecolorer"><ol><li class="li1"><div class="de1">UIView <span class="sy0">*</span>myTabView <span class="sy0">=</span> <span class="br0">&#91;</span><span class="br0">&#91;</span>UIView alloc<span class="br0">&#93;</span> initWithFrame<span class="sy0">:</span>frame<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CAGradientLayer <span class="sy0">*</span>gradient <span class="sy0">=</span> <span class="br0">&#91;</span>CAGradientLayer layer<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; gradient.frame <span class="sy0">=</span> myTabView.bounds;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; gradient.colors <span class="sy0">=</span> <span class="br0">&#91;</span><span class="kw5">NSArray</span> arrayWithObjects<span class="sy0">:</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="br0">&#40;</span><span class="kw4">id</span><span class="br0">&#41;</span><span class="br0">&#91;</span><span class="br0">&#91;</span>UIColor colorWithRed<span class="sy0">:</span><span class="nu0">0.1</span> green<span class="sy0">:</span><span class="nu0">0.1</span> blue<span class="sy0">:</span><span class="nu0">0.1</span> alpha<span class="sy0">:</span><span class="nu0">0.8</span> <span class="br0">&#93;</span> CGColor<span class="br0">&#93;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;, <span class="br0">&#40;</span><span class="kw4">id</span><span class="br0">&#41;</span><span class="br0">&#91;</span><span class="br0">&#91;</span>UIColor colorWithRed<span class="sy0">:</span><span class="nu0">0.1</span> green<span class="sy0">:</span><span class="nu0">0.1</span> blue<span class="sy0">:</span><span class="nu0">0.1</span> alpha<span class="sy0">:</span><span class="nu0">0.8</span> <span class="br0">&#93;</span> CGColor<span class="br0">&#93;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;, <span class="br0">&#40;</span><span class="kw4">id</span><span class="br0">&#41;</span><span class="br0">&#91;</span><span class="br0">&#91;</span>UIColor colorWithRed<span class="sy0">:</span><span class="nu0">0.1</span> green<span class="sy0">:</span><span class="nu0">0.1</span> blue<span class="sy0">:</span><span class="nu0">0.1</span> alpha<span class="sy0">:</span><span class="nu0">0.8</span> <span class="br0">&#93;</span> CGColor<span class="br0">&#93;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;, <span class="br0">&#40;</span><span class="kw4">id</span><span class="br0">&#41;</span><span class="br0">&#91;</span><span class="br0">&#91;</span>UIColor blackColor<span class="br0">&#93;</span> CGColor<span class="br0">&#93;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;, <span class="br0">&#40;</span><span class="kw4">id</span><span class="br0">&#41;</span><span class="br0">&#91;</span><span class="br0">&#91;</span>UIColor blackColor<span class="br0">&#93;</span> CGColor<span class="br0">&#93;</span>, <span class="kw2">nil</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#91;</span>myTabView.layer insertSublayer<span class="sy0">:</span>gradient atIndex<span class="sy0">:</span><span class="nu0">0</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#91;</span><span class="br0">&#91;</span>self.tabBarController tabBar<span class="br0">&#93;</span> insertSubview<span class="sy0">:</span>myTabView &nbsp;atIndex<span class="sy0">:</span><span class="nu0">0</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#91;</span>myTabView &nbsp;release<span class="br0">&#93;</span>;</div></li>
</ol></div></div>
<p>Result:<br />
<img class="alignnone" title="custom gradient in tabbar" src="http://gyazo.com/06c6dc8a8b574ecb3c2879c3d5226fc5.png" alt="" width="348" height="223" /></p>
<p>or, nice example with use Core Graphics to draw the gradient</p>
<div class="codecolorer-container objc"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="sy0">-</span> <span class="br0">&#40;</span><span class="kw4">void</span><span class="br0">&#41;</span>drawRect<span class="sy0">:</span><span class="br0">&#40;</span>CGRect<span class="br0">&#41;</span>rect </div></li>
<li class="li1"><div class="de1"><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGContextRef currentContext <span class="sy0">=</span> UIGraphicsGetCurrentContext<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGGradientRef glossGradient;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGColorSpaceRef rgbColorspace;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw4">size_t</span> num_locations <span class="sy0">=</span> <span class="nu0">2</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGFloat locations<span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span> <span class="sy0">=</span> <span class="br0">&#123;</span> <span class="nu0">0.0</span>, <span class="nu0">1.0</span> <span class="br0">&#125;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGFloat components<span class="br0">&#91;</span><span class="nu0">8</span><span class="br0">&#93;</span> <span class="sy0">=</span> <span class="br0">&#123;</span> <span class="nu0">1.0</span>, <span class="nu0">1.0</span>, <span class="nu0">1.0</span>, <span class="nu0">0.35</span>, &nbsp;<span class="co2">// Start color</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="nu0">1.0</span>, <span class="nu0">1.0</span>, <span class="nu0">1.0</span>, <span class="nu0">0.06</span> <span class="br0">&#125;</span>; <span class="co2">// End color</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; rgbColorspace <span class="sy0">=</span> CGColorSpaceCreateDeviceRGB<span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; glossGradient <span class="sy0">=</span> CGGradientCreateWithColorComponents<span class="br0">&#40;</span>rgbColorspace, components, locations, num_locations<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGRect currentBounds <span class="sy0">=</span> self.bounds;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGPoint topCenter <span class="sy0">=</span> CGPointMake<span class="br0">&#40;</span>CGRectGetMidX<span class="br0">&#40;</span>currentBounds<span class="br0">&#41;</span>, 0.0f<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGPoint midCenter <span class="sy0">=</span> CGPointMake<span class="br0">&#40;</span>CGRectGetMidX<span class="br0">&#40;</span>currentBounds<span class="br0">&#41;</span>, CGRectGetMidY<span class="br0">&#40;</span>currentBounds<span class="br0">&#41;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGContextDrawLinearGradient<span class="br0">&#40;</span>currentContext, glossGradient, topCenter, midCenter, <span class="nu0">0</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGGradientRelease<span class="br0">&#40;</span>glossGradient<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGColorSpaceRelease<span class="br0">&#40;</span>rgbColorspace<span class="br0">&#41;</span>; </div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div></div>
<p><a href="http://developer.apple.com/iphone/library/documentation/GraphicsImaging/Conceptual/drawingwithquartz2d/dq_shadings/dq_shadings.html#//apple_ref/doc/uid/TP30001066-CH207-TPXREF101" target="_blank">Many documentations</a></p>
<p><noindex><br />
<a target="_blank" href="http://stackoverflow.com/questions/422066/gradients-on-uiview-and-uilabels-on-iphone">resource</a></noindex></p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/make-gradient-on-iphoneipad.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple XML Parser based on NSXMLParser +converter</title>
		<link>http://www.developers-life.com/simple-xml-parser-based-on-nsxmlparser-converter.html</link>
		<comments>http://www.developers-life.com/simple-xml-parser-based-on-nsxmlparser-converter.html#comments</comments>
		<pubDate>Wed, 21 Apr 2010 11:45:16 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=944</guid>
		<description><![CDATA[Simple XML Parser based on NSXMLParser +converter to XML file
How To Setup:
insert next code to file &#8220;name of you project&#8221;_Prefix.pch
#import &#34;XMLNode.h&#34;
&#160; &#160; #import &#34;XMLParser.h&#34;
&#160; &#160; #import &#34;XMLConvert.h&#34;

Create and launching XMLParser.
You will get parsed data ( with XMLNode data type ) in callbackParser: method
NSURL *URLToFile = &#91;NSURL fileURLWithPath:&#91;&#91;NSBundle mainBundle&#93; pathForResource:@&#34;source&#34; ofType:@&#34;xml&#34;&#93;&#93;;
&#160; &#160; 
&#160; &#160; XMLParser *parser [...]]]></description>
			<content:encoded><![CDATA[<p>Simple XML Parser based on NSXMLParser +converter to XML file</p>
<p>How To Setup:<br />
insert next code to file &#8220;name of you project&#8221;_Prefix.pch</p>
<div class="codecolorer-container objc"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="co1">#import &quot;XMLNode.h&quot;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="co1">#import &quot;XMLParser.h&quot;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="co1">#import &quot;XMLConvert.h&quot;</span></div></li>
</ol></div></div>
<p>Create and launching XMLParser.<br />
You will get parsed data ( with XMLNode data type ) in <em>callbackParser:</em> method</p>
<div class="codecolorer-container objc"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="kw5">NSURL</span> <span class="sy0">*</span>URLToFile <span class="sy0">=</span> <span class="br0">&#91;</span><span class="kw5">NSURL</span> fileURLWithPath<span class="sy0">:</span><span class="br0">&#91;</span><span class="br0">&#91;</span><span class="kw5">NSBundle</span> mainBundle<span class="br0">&#93;</span> pathForResource<span class="sy0">:</span><span class="co3">@</span><span class="st0">&quot;source&quot;</span> ofType<span class="sy0">:</span><span class="co3">@</span><span class="st0">&quot;xml&quot;</span><span class="br0">&#93;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; XMLParser <span class="sy0">*</span>parser <span class="sy0">=</span> <span class="br0">&#91;</span><span class="br0">&#91;</span>XMLParser alloc<span class="br0">&#93;</span> init<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#91;</span>parser setDelegate<span class="sy0">:</span>self withAction<span class="sy0">:</span><span class="kw1">@selector</span><span class="br0">&#40;</span>callbackParser<span class="sy0">:</span><span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#91;</span>parser parseXMLFile<span class="sy0">:</span>URLToFile<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#91;</span>parser release<span class="br0">&#93;</span>;</div></li>
</ol></div></div>
<p>Converting results of parsing to XML file:</p>
<div class="codecolorer-container objc" style="height:35px;"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="kw5">NSString</span> <span class="sy0">*</span>content <span class="sy0">=</span> <span class="br0">&#91;</span>XMLConvert convertXMLNode<span class="sy0">:</span>root<span class="br0">&#93;</span>;</div></li>
</ol></div></div>
<p>And additional define methods for working with XMLNode&#8217;s:<br />
<em>XMLaddAttribute(node, object, key), XMLgetAttribute(node, key), XMLsetParent(node, parent), XMLaddChild(parent, child), XMLgetChild(parent, child), XMLremoveChild(parent, child), XMLgetChildWithAttribute(parent, childname, object, key)</em></p>
<p><a href="http://www.developers-life.com/wp-content/plugins/download_counter/redirect.php?id=9" target="_blank"><img src="http://www.developers-life.com/wp-content/plugins/download_counter/redirect.php?pid=9" border="0" alt="" height="0" width="0" />Source</a><br />
Good luck!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/simple-xml-parser-based-on-nsxmlparser-converter.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Streatch image with  stretchableImageWithLeftCapWidth: topCapHeight:</title>
		<link>http://www.developers-life.com/streatch-image.html</link>
		<comments>http://www.developers-life.com/streatch-image.html#comments</comments>
		<pubDate>Wed, 10 Mar 2010 14:43:38 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[UIImage]]></category>
		<category><![CDATA[UIInterface]]></category>
		<category><![CDATA[UIKit]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=924</guid>
		<description><![CDATA[Sample
+ &#40;UIImage*&#41;greenBubble
&#123;
&#160; &#160; if &#40;sGreenBubble == nil&#41; &#123;
&#160; &#160; &#160; &#160; UIImage *i = &#91;UIImage imageNamed:@&#34;Balloon_1.png&#34;&#93;;
&#160; &#160; &#160; &#160; sGreenBubble = &#91;&#91;i stretchableImageWithLeftCapWidth:15 topCapHeight:13&#93; retain&#93;;
&#160; &#160; &#125;
&#160; &#160; return sGreenBubble;
&#125;
&#160;
+ &#40;UIImage*&#41;grayBubble
&#123;
&#160; &#160; if &#40;sGrayBubble == nil&#41; &#123;
&#160; &#160; &#160; &#160; UIImage *i = &#91;UIImage imageNamed:@&#34;Balloon_2.png&#34;&#93;;
&#160; &#160; &#160; &#160; sGrayBubble = &#91;&#91;i stretchableImageWithLeftCapWidth:21 topCapHeight:13&#93; retain&#93;;
&#160; &#160; [...]]]></description>
			<content:encoded><![CDATA[<p>Sample</p>
<div class="codecolorer-container objc"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="sy0">+</span> <span class="br0">&#40;</span>UIImage<span class="sy0">*</span><span class="br0">&#41;</span>greenBubble</div></li>
<li class="li1"><div class="de1"><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>sGreenBubble <span class="sy0">==</span> <span class="kw2">nil</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; UIImage <span class="sy0">*</span>i <span class="sy0">=</span> <span class="br0">&#91;</span>UIImage imageNamed<span class="sy0">:</span><span class="co3">@</span><span class="st0">&quot;Balloon_1.png&quot;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; sGreenBubble <span class="sy0">=</span> <span class="br0">&#91;</span><span class="br0">&#91;</span>i stretchableImageWithLeftCapWidth<span class="sy0">:</span><span class="nu0">15</span> topCapHeight<span class="sy0">:</span><span class="nu0">13</span><span class="br0">&#93;</span> retain<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw1">return</span> sGreenBubble;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="sy0">+</span> <span class="br0">&#40;</span>UIImage<span class="sy0">*</span><span class="br0">&#41;</span>grayBubble</div></li>
<li class="li1"><div class="de1"><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>sGrayBubble <span class="sy0">==</span> <span class="kw2">nil</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; UIImage <span class="sy0">*</span>i <span class="sy0">=</span> <span class="br0">&#91;</span>UIImage imageNamed<span class="sy0">:</span><span class="co3">@</span><span class="st0">&quot;Balloon_2.png&quot;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; sGrayBubble <span class="sy0">=</span> <span class="br0">&#91;</span><span class="br0">&#91;</span>i stretchableImageWithLeftCapWidth<span class="sy0">:</span><span class="nu0">21</span> topCapHeight<span class="sy0">:</span><span class="nu0">13</span><span class="br0">&#93;</span> retain<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw1">return</span> sGrayBubble;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div></div>
<p>Results:<br />
<span id="more-924"></span><br />
<img class="alignleft" src="http://gyazo.com/34d1577d68badfe8896178eb0a708fa5.png" alt="" width="186" height="345" /><br />
or<br />
<img class="alignnone" src="http://gyazo.com/fb5038e96245fed58764ce1ba8e82902.png" alt="" width="178" height="333" /></p>
<p>испоьзовал 2 картинки<br />
<img class="alignleft" src="http://gyazo.com/585d12ee517fcfe2dfd5a7740446633b.png" alt="" width="43" height="32" /><img class="alignnone" src="http://gyazo.com/ecdc3ecdf52bda4d41cd677c90533e77.png" alt="" width="56" height="56" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/streatch-image.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Universal web services suite for iPhone/iPad and Android apps</title>
		<link>http://www.developers-life.com/universal-web-services-suite-for-iphoneipad-and-android-apps.html</link>
		<comments>http://www.developers-life.com/universal-web-services-suite-for-iphoneipad-and-android-apps.html#comments</comments>
		<pubDate>Thu, 25 Feb 2010 12:08:13 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Mob1serv]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[life]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[Private]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[Кодинг]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=901</guid>
		<description><![CDATA[Hi there! We are a group of iPhone / Android developers who have developed a suite of web services to assist us and other developers in building great apps.
After numerous projects we have become tired of having to set up the server scripts to do all the same things for different clients. Most of the [...]]]></description>
			<content:encoded><![CDATA[<p>Hi there! We are a group of iPhone / Android developers who have developed a suite of web services to assist us and other developers in building great apps.</p>
<p>After numerous projects we have become tired of having to set up the server scripts to do all the same things for different clients. Most of the server functionality</p>
<p>is typical: 1) storing location data for Google Maps; 2) storing users&#8217; high scores / ranks; 3) sending Push Notifications; 4) storing files / XML; etc.</p>
<p>We couldn&#8217;t use the existent solutions because in some cases they didn&#8217;t provide the required functionality and in most cases they require your users to be exposed to some social network of theirs, while our clients just want a simple functionality without users knowing of any services behind that.</p>
<p>So we have launched what we call Mob1serv, a universal server solution for the typical needs of iPhone / Android apps. It consists of modules which deal with most common tasks:</p>
<p>    * High Scores &#8211; a powerful online high scores table<br />
    * PushNote &#8211; a module allowing to send immediate or delayed Push Notifications (you can build instant messengers or alarm clocks, anything with this)<br />
    * GeoPos &#8211;  stores locations of Google Map objects, their statuses and &#8216;last seen online&#8217; time<br />
    * OAuth contracter  &#8211; allows you to implement transparent authentication and integration with Facebook, Twitter, Google etc<br />
    * More modules to come!</p>
<p><span id="more-901"></span><br />
We have tried to make it as simple as possible for developers, so you just need to register at the back end and then you can add as many apps as you want and start using these services. From the client (app) side, you need to add a library to your project and put a corresponding ID there, that&#8217;s it.</p>
<p>The service is free, it&#8217;s a &#8216;freemium&#8217; model. It has been built by developers for developers. Some developers and apps are already using it as it was open for alpha testing before, but now we are launching it open for the world so that we can see what you&#8217;re thinking of it and also get your feedback of how we can improve the existent modules or what modules to add next. Welcome to <a href="http://www.mob1serv.com/" title="universal web service for iPhone and Android apps">Mob1serv</a>!</p>
<p><a href="http://www.facebook.com/pages/mob1serv-universal-web-service-for-iPhone-Android/324022903887"><img src="http://gyazo.com/b2486f4d2738f2cb7724d7ebd87321ce.png" title="become our Facebook fan" border="0"></a></p>
<p><a href="https://twitter.com/mob1serv/">Twitter</a></p>
<p><a href="http://www.youtube.com/user/mob1serv">Youtube</a></p>
<p><a href="http://www.vimeo.com/mob1serv">Vimeo</a></p>
<p><a href="http://digg.com/apple/universal_server_API_solution_for_iPhone_Android">Digg</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/universal-web-services-suite-for-iphoneipad-and-android-apps.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Custom UINavigationBar with image and back button</title>
		<link>http://www.developers-life.com/custom-uinavigationbar-with-image-and-back-button.html</link>
		<comments>http://www.developers-life.com/custom-uinavigationbar-with-image-and-back-button.html#comments</comments>
		<pubDate>Tue, 09 Feb 2010 19:10:16 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[UIKit]]></category>
		<category><![CDATA[UINavigationBar]]></category>
		<category><![CDATA[Кодинг]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=877</guid>
		<description><![CDATA[  Many people could not find this solution! It&#8217;s really very simple solution  and it does not contain any private methods and functions. It&#8217;s based on the drawRect method and the simple manipulation with the title. If the title is specified, then the text of title displays, but if not, then displays the [...]]]></description>
			<content:encoded><![CDATA[<p>  Many people could not find this solution! It&#8217;s really very simple solution  and it does not contain any private methods and functions. It&#8217;s based on the drawRect method and the simple manipulation with the title. If the title is specified, then the text of title displays, but if not, then displays the image.<br />
<span id="more-877"></span></p>
<div class="codecolorer-container objc"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="kw1">@implementation</span> UINavigationBar <span class="br0">&#40;</span>UINavigationBarCustomDraw<span class="br0">&#41;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="sy0">-</span> <span class="br0">&#40;</span><span class="kw4">void</span><span class="br0">&#41;</span> drawRect<span class="sy0">:</span><span class="br0">&#40;</span>CGRect<span class="br0">&#41;</span>rect <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#91;</span>self setTintColor<span class="sy0">:</span><span class="br0">&#91;</span>UIColor colorWithRed<span class="sy0">:</span>0.5f</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;green<span class="sy0">:</span> 0.5f</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;blue<span class="sy0">:</span><span class="nu0">0</span> </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;alpha<span class="sy0">:</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="br0">&#91;</span>self.topItem.title length<span class="br0">&#93;</span> &gt; <span class="nu0">0</span> <span class="sy0">&amp;&amp;</span> <span class="sy0">!</span><span class="br0">&#91;</span>self.topItem.title isEqualToString<span class="sy0">:</span><span class="co3">@</span><span class="st0">&quot;Back to ...&quot;</span><span class="br0">&#93;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span><span class="br0">&#91;</span>UIImage imageNamed<span class="sy0">:</span><span class="co3">@</span><span class="st0">&quot;Header_1px.png&quot;</span><span class="br0">&#93;</span> drawInRect<span class="sy0">:</span>rect<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; CGRect frame <span class="sy0">=</span> CGRectMake<span class="br0">&#40;</span><span class="nu0">0</span>, <span class="nu0">0</span>, <span class="nu0">320</span>, <span class="nu0">44</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; UILabel <span class="sy0">*</span>label <span class="sy0">=</span> <span class="br0">&#91;</span><span class="br0">&#91;</span><span class="br0">&#91;</span>UILabel alloc<span class="br0">&#93;</span> initWithFrame<span class="sy0">:</span>frame<span class="br0">&#93;</span> autorelease<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>label setBackgroundColor<span class="sy0">:</span><span class="br0">&#91;</span>UIColor clearColor<span class="br0">&#93;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; label.font <span class="sy0">=</span> <span class="br0">&#91;</span>UIFont boldSystemFontOfSize<span class="sy0">:</span> <span class="nu0">20.0</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; label.shadowColor <span class="sy0">=</span> <span class="br0">&#91;</span>UIColor colorWithWhite<span class="sy0">:</span><span class="nu0">0.0</span> alpha<span class="sy0">:</span><span class="nu0">1</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; label.textAlignment <span class="sy0">=</span> UITextAlignmentCenter;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; label.textColor <span class="sy0">=</span> <span class="br0">&#91;</span>UIColor whiteColor<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; label.text <span class="sy0">=</span> self.topItem.title;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; self.topItem.titleView <span class="sy0">=</span> label;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span><span class="br0">&#91;</span>UIImage imageNamed<span class="sy0">:</span><span class="co3">@</span><span class="st0">&quot;Header.png&quot;</span><span class="br0">&#93;</span> drawInRect<span class="sy0">:</span>rect<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; self.topItem.titleView <span class="sy0">=</span> <span class="br0">&#91;</span><span class="br0">&#91;</span><span class="br0">&#91;</span>UIView alloc<span class="br0">&#93;</span> init<span class="br0">&#93;</span> autorelease<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">@end</span></div></li>
</ol></div></div>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/HJKUIFfOThI&#038;hl=en_US&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/HJKUIFfOThI&#038;hl=en_US&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
<p><a href="http://www.developers-life.com/wp-content/plugins/download_counter/redirect.php?id=8" target="_blank"><img src="http://www.developers-life.com/wp-content/plugins/download_counter/redirect.php?pid=8" border="0" alt="" />source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/custom-uinavigationbar-with-image-and-back-button.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
