<?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; Rewrite</title>
	<atom:link href="http://www.developers-life.com/tag/rewrite/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>Fri, 03 Feb 2012 11:49:47 +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>Rewrite UITabBar and UITabBarItem iPhone</title>
		<link>http://www.developers-life.com/rewrite-uitabbar-and-uitabbaritem-iphone.html</link>
		<comments>http://www.developers-life.com/rewrite-uitabbar-and-uitabbaritem-iphone.html#comments</comments>
		<pubDate>Thu, 08 Oct 2009 09:58:16 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[Private]]></category>
		<category><![CDATA[Rewrite]]></category>
		<category><![CDATA[UITabBar]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=541</guid>
		<description><![CDATA[Вариант 1 Вкратце о чем нужно помнить! Самое главное, если вы используете какие-то переменные из приват фреймверков и для них не прописаны property, обязательно пропишите! Иначе при компиляции на эти переменные будет ругаться компилятор к примеру так: 1234&#34;_OBJC_IVAR_$_UITabBarItem._selectedImage&#34;, referenced from: _OBJC_IVAR_$_UITabBarItem._selectedImage$non_lazy_ptr in UICategory.o ld: symbol&#40;s&#41; not found collect2: ld returned 1 exit status Рассказывать тут [...]]]></description>
			<content:encoded><![CDATA[<p>Вариант 1</p>
<p>Вкратце о чем нужно помнить!<br />
Самое главное, если вы используете какие-то переменные из приват фреймверков и для них не прописаны property, обязательно пропишите! Иначе при компиляции на эти переменные будет ругаться компилятор к примеру так:</p>
<div class="codecolorer-container objc geshi" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:810px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #bf1d1a;">&quot;_OBJC_IVAR_$_UITabBarItem._selectedImage&quot;</span>, referenced from<span style="color: #002200;">:</span><br />
_OBJC_IVAR_$_UITabBarItem._selectedImage$non_lazy_ptr <span style="color: #a61390;">in</span> UICategory.o<br />
ld<span style="color: #002200;">:</span> symbol<span style="color: #002200;">&#40;</span>s<span style="color: #002200;">&#41;</span> not found<br />
collect2<span style="color: #002200;">:</span> ld returned <span style="color: #2400d9;">1</span> <a href="http://www.opengroup.org/onlinepubs/009695399/functions/exit.html"><span style="color: #a61390;">exit</span></a> status</div></td></tr></tbody></table></div>
<p>Рассказывать тут не очем кроме quartz, но о нем я расскажу в следующем посте подробнее, как появится время. Смотрите исходники, кода немного :), основные файлы ExtendsForTabBar.h и m. Исходники ниже.</p>
<p>Вариант 2</p>
<p>Можно взять за основу UITabBar и создать свой объект а не переписывать методы существующего. Хотя в конечном итоге и в этом случае мы переписываем методы.</p>
<p>Добавив два файла пустого NSObject к примеру с именем MyTabBar. В файле h вместо NSObject напишем UITabBar.<br />
В m файе напишем:</p>
<div class="codecolorer-container objc geshi" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:810px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br /></div></td><td><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span> drawRect<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>CGRect<span style="color: #002200;">&#41;</span>rect <span style="color: #002200;">&#123;</span><br />
&nbsp; &nbsp; &nbsp;self.frame <span style="color: #002200;">=</span> CGRectMake<span style="color: #002200;">&#40;</span><span style="color: #2400d9;">0</span>, <span style="color: #2400d9;">409</span>, <span style="color: #2400d9;">320</span>, <span style="color: #2400d9;">71</span><span style="color: #002200;">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp;UIImage <span style="color: #002200;">*</span>img &nbsp;<span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>UIImage imageNamed<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;tabbarbg2.png&quot;</span><span style="color: #002200;">&#93;</span>;<br />
&nbsp; &nbsp; &nbsp;<span style="color: #002200;">&#91;</span>img drawInRect<span style="color: #002200;">:</span>CGRectMake<span style="color: #002200;">&#40;</span><span style="color: #2400d9;">0</span>, <span style="color: #2400d9;">0</span>, <span style="color: #2400d9;">320</span>, <span style="color: #2400d9;">71</span><span style="color: #002200;">&#41;</span><span style="color: #002200;">&#93;</span>;<br />
<span style="color: #002200;">&#125;</span></div></td></tr></tbody></table></div>
<p>Далее в MainWindow.xib сделать все как на скриншотах, сохранить и скомпилировать.</p>
<p><a href="http://www.developers-life.com/wp-content/uploads/2009/10/1.png" target="_blank"><img src="http://www.developers-life.com/wp-content/uploads/2009/10/1-286x300.png" alt="" title="1" width="286" height="300" class="alignnone size-medium wp-image-542" /></a><br />
<br />
<a href="http://www.developers-life.com/wp-content/uploads/2009/10/2.png" target="_blank"><img src="http://www.developers-life.com/wp-content/uploads/2009/10/2-284x300.png" alt="" title="2" width="284" height="300" class="alignnone size-medium wp-image-543" /></a></p>
<p><a href="http://depositfiles.com/files/fqfj8gv9a" target="_blank">Исходники</a></p>
<p>Чтоб найти еще что-то подобное достаточно набрать: &#8220;Custom Colors UITabBar UITabBarItem&#8221;, &#8220;How to custom UITabBar&#8221; и подобное.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/rewrite-uitabbar-and-uitabbaritem-iphone.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

