<?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; xCode</title>
	<atom:link href="http://www.developers-life.com/tag/xcode/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>Uninstall/Resetting Xcode</title>
		<link>http://www.developers-life.com/uninstallresetting-xcode.html</link>
		<comments>http://www.developers-life.com/uninstallresetting-xcode.html#comments</comments>
		<pubDate>Sun, 05 Sep 2010 16:29:15 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[SDK]]></category>
		<category><![CDATA[xCode]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=1061</guid>
		<description><![CDATA[To reset Xcode to its factory settings for the logged-in user, run these commands in Terminal:
> defaults delete com.apple.Xcode
> rm -rf ~/Library/Application\ Support/Xcode
At one point in the process he opted to remove the Xcode developer tools and start the configuration from the beginning. Which leads to the tip: should you ever find the need to [...]]]></description>
			<content:encoded><![CDATA[<p>To reset Xcode to its factory settings for the logged-in user, run these commands in Terminal:</p>
<p>> defaults delete com.apple.Xcode<br />
> rm -rf ~/Library/Application\ Support/Xcode</p>
<p>At one point in the process he opted to remove the Xcode developer tools and start the configuration from the beginning. Which leads to the tip: should you ever find the need to remove Xcode, run the following from within a terminal window to make it happen:</p>
<p>> sudo <Xcode>/Library/uninstall-devtools &#8211;mode=all<br />
<Xcode> is the directory where the tools are installed. For typical installations the full path is /Developer/Library/uninstall-devtools</p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/uninstallresetting-xcode.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Local Notification Sample Code (OS 4.0 only)</title>
		<link>http://www.developers-life.com/local-notification-sample-code-os-4-0-only.html</link>
		<comments>http://www.developers-life.com/local-notification-sample-code-os-4-0-only.html#comments</comments>
		<pubDate>Sun, 13 Jun 2010 21:34:46 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[4.0]]></category>
		<category><![CDATA[OS]]></category>
		<category><![CDATA[xCode]]></category>
		<category><![CDATA[Кодинг]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=1051</guid>
		<description><![CDATA[  Resource site 
Start a new Window-based Application Project called LocalPush
Add an instance variable bgTask in LocalPushAppDelegate
Download Sample + 2 books &#8220;iPhoneMemoryManagementFinalVersion&#8221; and &#8220;ES 2.0 Programming Guide&#8221;
@interface LocalPushAppDelegate : NSObject &#123;
&#160; &#160; UIWindow *window;
&#160; &#160; UIBackgroundTaskIdentifier bgTask;
&#125;


It will fire up a Local Notification to remind you one min before the event which is 2 [...]]]></description>
			<content:encoded><![CDATA[<p><noindex> <a href="http://iphonesdkdev.blogspot.com/2010/04/local-push-notification-sample-code-os.html" target="blank"> Resource site</a> </noindex></p>
<p>Start a new Window-based Application Project called LocalPush</p>
<p>Add an instance variable bgTask in LocalPushAppDelegate</p>
<p><a href="http://depositfiles.com/files/tl1knbiq0" style="color:red;">Download Sample</a> + 2 books &#8220;iPhoneMemoryManagementFinalVersion&#8221; and &#8220;ES 2.0 Programming Guide&#8221;</p>
<div class="codecolorer-container objc"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="kw1">@interface</span> LocalPushAppDelegate <span class="sy0">:</span> <span class="kw5">NSObject</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; UIWindow <span class="sy0">*</span>window;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; UIBackgroundTaskIdentifier bgTask;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div></div>
<p><a href="http://www.developers-life.com/wp-content/uploads/2010/06/Screen-shot-2010-06-20-at-1.06.08-AM.png" target="_blank"><img class="alignnone size-medium wp-image-1056" title="message from background, iphone OS 4.0" src="http://www.developers-life.com/wp-content/uploads/2010/06/Screen-shot-2010-06-20-at-1.06.08-AM-161x300.png" alt="message from background, iphone OS 4.0" width="161" height="300" /></a></p>
<p>It will fire up a Local Notification to remind you one min before the event which is 2 minutes due from now<br />
<span id="more-1051"></span></p>
<div class="codecolorer-container objc" style="height:1400px;"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="co2">//</span></div></li>
<li class="li1"><div class="de1"><span class="co2">// LocalPushAppDelegate.m</span></div></li>
<li class="li1"><div class="de1"><span class="co2">// LocalPush</span></div></li>
<li class="li1"><div class="de1"><span class="co2">//</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">@interface</span> ToDoItem <span class="sy0">:</span> <span class="kw5">NSObject</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">NSInteger year;</div></li>
<li class="li1"><div class="de1">NSInteger month;</div></li>
<li class="li1"><div class="de1">NSInteger day;</div></li>
<li class="li1"><div class="de1">NSInteger hour;</div></li>
<li class="li1"><div class="de1">NSInteger minute;</div></li>
<li class="li1"><div class="de1">NSInteger second;</div></li>
<li class="li1"><div class="de1"><span class="kw5">NSString</span> <span class="sy0">*</span>eventName;</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">@property</span> <span class="br0">&#40;</span>nonatomic, readwrite<span class="br0">&#41;</span> NSInteger year;</div></li>
<li class="li1"><div class="de1"><span class="kw1">@property</span> <span class="br0">&#40;</span>nonatomic, readwrite<span class="br0">&#41;</span> NSInteger month;</div></li>
<li class="li1"><div class="de1"><span class="kw1">@property</span> <span class="br0">&#40;</span>nonatomic, readwrite<span class="br0">&#41;</span> NSInteger day;</div></li>
<li class="li1"><div class="de1"><span class="kw1">@property</span> <span class="br0">&#40;</span>nonatomic, readwrite<span class="br0">&#41;</span> NSInteger hour;</div></li>
<li class="li1"><div class="de1"><span class="kw1">@property</span> <span class="br0">&#40;</span>nonatomic, readwrite<span class="br0">&#41;</span> NSInteger minute;</div></li>
<li class="li1"><div class="de1"><span class="kw1">@property</span> <span class="br0">&#40;</span>nonatomic, readwrite<span class="br0">&#41;</span> NSInteger second;</div></li>
<li class="li1"><div class="de1"><span class="kw1">@property</span> <span class="br0">&#40;</span>nonatomic, copy<span class="br0">&#41;</span> <span class="kw5">NSString</span> <span class="sy0">*</span>eventName;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">@end</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">@implementation</span> ToDoItem</div></li>
<li class="li1"><div class="de1"><span class="kw1">@synthesize</span> year, month, day, hour, minute, second, eventName;</div></li>
<li class="li1"><div class="de1"><span class="kw1">@end</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="co1">#import &quot;LocalPushAppDelegate.h&quot;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">@implementation</span> LocalPushAppDelegate</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">@synthesize</span> window;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="co1">#define ToDoItemKey @&quot;EVENTKEY1&quot;</span></div></li>
<li class="li1"><div class="de1"><span class="co1">#define MessageTitleKey @&quot;MSGKEY1&quot;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</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">BOOL</span><span class="br0">&#41;</span>application<span class="sy0">:</span><span class="br0">&#40;</span>UIApplication <span class="sy0">*</span><span class="br0">&#41;</span>application didFinishLaunchingWithOptions<span class="sy0">:</span><span class="br0">&#40;</span><span class="kw5">NSDictionary</span> <span class="sy0">*</span><span class="br0">&#41;</span>launchOptions <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">NSLog<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;application: didFinishLaunchingWithOptions:&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="co2">// Override point for customization after application launch</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">UILocalNotification <span class="sy0">*</span>localNotif <span class="sy0">=</span> <span class="br0">&#91;</span>launchOptions</div></li>
<li class="li1"><div class="de1">objectForKey<span class="sy0">:</span>UIApplicationLaunchOptionsLocalNotificationKey<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span>localNotif<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1"><span class="kw5">NSString</span> <span class="sy0">*</span>itemName <span class="sy0">=</span> <span class="br0">&#91;</span>localNotif.userInfo objectForKey<span class="sy0">:</span>ToDoItemKey<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="co2">// [viewController displayItem:itemName]; // custom method</span></div></li>
<li class="li1"><div class="de1">application.applicationIconBadgeNumber <span class="sy0">=</span> localNotif.applicationIconBadgeNumber<span class="sy0">-</span><span class="nu0">1</span>;</div></li>
<li class="li1"><div class="de1">NSLog<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;has localNotif %@&quot;</span>,itemName<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1"><span class="kw1">else</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span><span class="br0">&#91;</span>UIApplication sharedApplication<span class="br0">&#93;</span> cancelAllLocalNotifications<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw5">NSDate</span> <span class="sy0">*</span>now <span class="sy0">=</span> <span class="br0">&#91;</span><span class="kw5">NSDate</span> date<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">NSLog<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;now is %@&quot;</span>,now<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw5">NSDate</span> <span class="sy0">*</span>scheduled <span class="sy0">=</span> <span class="br0">&#91;</span>now dateByAddingTimeInterval<span class="sy0">:</span><span class="nu0">120</span><span class="br0">&#93;</span> ; <span class="co2">//get x minute after</span></div></li>
<li class="li1"><div class="de1"><span class="kw5">NSCalendar</span> <span class="sy0">*</span>calendar <span class="sy0">=</span> <span class="br0">&#91;</span><span class="kw5">NSCalendar</span> currentCalendar<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw4">unsigned</span> <span class="kw4">int</span> unitFlags <span class="sy0">=</span> NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit|NSHourCalendarUnit|NSMinuteCalendarUnit;</div></li>
<li class="li1"><div class="de1"><span class="kw5">NSDateComponents</span> <span class="sy0">*</span>comp <span class="sy0">=</span> <span class="br0">&#91;</span>calendar components<span class="sy0">:</span>unitFlags fromDate<span class="sy0">:</span>scheduled<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">NSLog<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;scheduled is %@&quot;</span>,scheduled<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">ToDoItem <span class="sy0">*</span>todoitem <span class="sy0">=</span> <span class="br0">&#91;</span><span class="br0">&#91;</span>ToDoItem alloc<span class="br0">&#93;</span> init<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">todoitem.day <span class="sy0">=</span> <span class="br0">&#91;</span>comp day<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">todoitem.month <span class="sy0">=</span> <span class="br0">&#91;</span>comp month<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">todoitem.year <span class="sy0">=</span> <span class="br0">&#91;</span>comp year<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">todoitem.hour <span class="sy0">=</span> <span class="br0">&#91;</span>comp hour<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">todoitem.minute <span class="sy0">=</span> <span class="br0">&#91;</span>comp minute<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">todoitem.eventName <span class="sy0">=</span> <span class="co3">@</span><span class="st0">&quot;Testing Event&quot;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>self scheduleNotificationWithItem<span class="sy0">:</span>todoitem interval<span class="sy0">:</span><span class="nu0">1</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">NSLog<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;scheduleNotificationWithItem&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>window makeKeyAndVisible<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw1">return</span> <span class="kw2">YES</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="sy0">-</span> <span class="br0">&#40;</span><span class="kw4">void</span><span class="br0">&#41;</span>application<span class="sy0">:</span><span class="br0">&#40;</span>UIApplication <span class="sy0">*</span><span class="br0">&#41;</span>application didReceiveLocalNotification<span class="sy0">:</span><span class="br0">&#40;</span>UILocalNotification <span class="sy0">*</span><span class="br0">&#41;</span>notif <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">NSLog<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;application: didReceiveLocalNotification:&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw5">NSString</span> <span class="sy0">*</span>itemName <span class="sy0">=</span> <span class="br0">&#91;</span>notif.userInfo objectForKey<span class="sy0">:</span>ToDoItemKey<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw5">NSString</span> <span class="sy0">*</span>messageTitle <span class="sy0">=</span> <span class="br0">&#91;</span>notif.userInfo objectForKey<span class="sy0">:</span>MessageTitleKey<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="co2">// [viewController displayItem:itemName]; // custom method</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>self _showAlert<span class="sy0">:</span>itemName withTitle<span class="sy0">:</span>messageTitle<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">NSLog<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;Receive Local Notification while the app is still running...&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">NSLog<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;current notification is %@&quot;</span>,notif<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">application.applicationIconBadgeNumber <span class="sy0">=</span> notif.applicationIconBadgeNumber<span class="sy0">-</span><span class="nu0">1</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</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><span class="kw4">void</span><span class="br0">&#41;</span> _showAlert<span class="sy0">:</span><span class="br0">&#40;</span><span class="kw5">NSString</span><span class="sy0">*</span><span class="br0">&#41;</span>pushmessage withTitle<span class="sy0">:</span><span class="br0">&#40;</span><span class="kw5">NSString</span><span class="sy0">*</span><span class="br0">&#41;</span>title</div></li>
<li class="li1"><div class="de1"><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">UIAlertView<span class="sy0">*</span> alertView <span class="sy0">=</span> <span class="br0">&#91;</span><span class="br0">&#91;</span>UIAlertView alloc<span class="br0">&#93;</span> initWithTitle<span class="sy0">:</span>title message<span class="sy0">:</span>pushmessage delegate<span class="sy0">:</span>self cancelButtonTitle<span class="sy0">:</span><span class="co3">@</span><span class="st0">&quot;OK&quot;</span> otherButtonTitles<span class="sy0">:</span><span class="kw2">nil</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>alertView show<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span>alertView<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>alertView release<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><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">&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>scheduleNotificationWithItem<span class="sy0">:</span><span class="br0">&#40;</span>ToDoItem <span class="sy0">*</span><span class="br0">&#41;</span>item interval<span class="sy0">:</span><span class="br0">&#40;</span><span class="kw4">int</span><span class="br0">&#41;</span>minutesBefore <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1"><span class="kw5">NSCalendar</span> <span class="sy0">*</span>calendar <span class="sy0">=</span> <span class="br0">&#91;</span><span class="kw5">NSCalendar</span> autoupdatingCurrentCalendar<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw5">NSDateComponents</span> <span class="sy0">*</span>dateComps <span class="sy0">=</span> <span class="br0">&#91;</span><span class="br0">&#91;</span><span class="kw5">NSDateComponents</span> alloc<span class="br0">&#93;</span> init<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>dateComps setDay<span class="sy0">:</span>item.day<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>dateComps setMonth<span class="sy0">:</span>item.month<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>dateComps setYear<span class="sy0">:</span>item.year<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>dateComps setHour<span class="sy0">:</span>item.hour<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>dateComps setMinute<span class="sy0">:</span>item.minute<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw5">NSDate</span> <span class="sy0">*</span>itemDate <span class="sy0">=</span> <span class="br0">&#91;</span>calendar dateFromComponents<span class="sy0">:</span>dateComps<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>dateComps release<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">UILocalNotification <span class="sy0">*</span>localNotif <span class="sy0">=</span> <span class="br0">&#91;</span><span class="br0">&#91;</span>UILocalNotification alloc<span class="br0">&#93;</span> init<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span>localNotif <span class="sy0">==</span> <span class="kw2">nil</span><span class="br0">&#41;</span></div></li>
<li class="li1"><div class="de1"><span class="kw1">return</span>;</div></li>
<li class="li1"><div class="de1">localNotif.fireDate <span class="sy0">=</span> <span class="br0">&#91;</span>itemDate dateByAddingTimeInterval<span class="sy0">:-</span><span class="br0">&#40;</span>minutesBefore<span class="sy0">*</span><span class="nu0">60</span><span class="br0">&#41;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">NSLog<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;fireDate is %@&quot;</span>,localNotif.fireDate<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">localNotif.timeZone <span class="sy0">=</span> <span class="br0">&#91;</span><span class="kw5">NSTimeZone</span> defaultTimeZone<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">localNotif.alertBody <span class="sy0">=</span> <span class="br0">&#91;</span><span class="kw5">NSString</span> stringWithFormat<span class="sy0">:</span>NSLocalizedString<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;%@ in %i minutes.&quot;</span>, <span class="kw2">nil</span><span class="br0">&#41;</span>,</div></li>
<li class="li1"><div class="de1">item.eventName, minutesBefore<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">localNotif.alertAction <span class="sy0">=</span> NSLocalizedString<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;View Details&quot;</span>, <span class="kw2">nil</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">localNotif.soundName <span class="sy0">=</span> UILocalNotificationDefaultSoundName;</div></li>
<li class="li1"><div class="de1">localNotif.applicationIconBadgeNumber <span class="sy0">=</span> <span class="nu0">1</span>;</div></li>
<li class="li1"><div class="de1"><span class="co2">// NSDictionary *infoDict = [NSDictionary dictionaryWithObject:item.eventName forKey:ToDoItemKey];</span></div></li>
<li class="li1"><div class="de1"><span class="kw5">NSDictionary</span> <span class="sy0">*</span>infoDict <span class="sy0">=</span> <span class="br0">&#91;</span><span class="kw5">NSDictionary</span> dictionaryWithObjectsAndKeys<span class="sy0">:</span>item.eventName,ToDoItemKey, <span class="co3">@</span><span class="st0">&quot;Local Push received while running&quot;</span>, MessageTitleKey, <span class="kw2">nil</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">localNotif.userInfo <span class="sy0">=</span> infoDict;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span><span class="br0">&#91;</span>UIApplication sharedApplication<span class="br0">&#93;</span> scheduleLocalNotification<span class="sy0">:</span>localNotif<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">NSLog<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;scheduledLocalNotifications are %@&quot;</span>, <span class="br0">&#91;</span><span class="br0">&#91;</span>UIApplication sharedApplication<span class="br0">&#93;</span> scheduledLocalNotifications<span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>localNotif release<span class="br0">&#93;</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="sy0">-</span> <span class="br0">&#40;</span><span class="kw5">NSString</span> <span class="sy0">*</span><span class="br0">&#41;</span> checkForIncomingChat <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1"><span class="kw1">return</span> <span class="co3">@</span><span class="st0">&quot;javacom&quot;</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="sy0">-</span> <span class="br0">&#40;</span><span class="kw4">void</span><span class="br0">&#41;</span>applicationDidEnterBackground<span class="sy0">:</span><span class="br0">&#40;</span>UIApplication <span class="sy0">*</span><span class="br0">&#41;</span>application <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">NSLog<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;Application entered background state.&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="co2">// UIBackgroundTaskIdentifier bgTask is instance variable</span></div></li>
<li class="li1"><div class="de1">NSAssert<span class="br0">&#40;</span>self<span class="sy0">-</span>&gt;bgTask <span class="sy0">==</span> UIBackgroundTaskInvalid, <span class="kw2">nil</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">bgTask <span class="sy0">=</span> <span class="br0">&#91;</span>application beginBackgroundTaskWithExpirationHandler<span class="sy0">:</span> <span class="sy0">^</span><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">dispatch_async<span class="br0">&#40;</span>dispatch_get_main_queue<span class="br0">&#40;</span><span class="br0">&#41;</span>, <span class="sy0">^</span><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>application endBackgroundTask<span class="sy0">:</span>self<span class="sy0">-</span>&gt;bgTask<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">self<span class="sy0">-</span>&gt;bgTask <span class="sy0">=</span> UIBackgroundTaskInvalid;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">dispatch_async<span class="br0">&#40;</span>dispatch_get_main_queue<span class="br0">&#40;</span><span class="br0">&#41;</span>, <span class="sy0">^</span><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1"><span class="kw1">while</span> <span class="br0">&#40;</span><span class="br0">&#91;</span>application backgroundTimeRemaining<span class="br0">&#93;</span> &gt; <span class="nu0">1.0</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1"><span class="kw5">NSString</span> <span class="sy0">*</span>friend <span class="sy0">=</span> <span class="br0">&#91;</span>self checkForIncomingChat<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span>friend<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">UILocalNotification <span class="sy0">*</span>localNotif <span class="sy0">=</span> <span class="br0">&#91;</span><span class="br0">&#91;</span>UILocalNotification alloc<span class="br0">&#93;</span> init<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span>localNotif<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">localNotif.alertBody <span class="sy0">=</span> <span class="br0">&#91;</span><span class="kw5">NSString</span> stringWithFormat<span class="sy0">:</span></div></li>
<li class="li1"><div class="de1">NSLocalizedString<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;%@ has a message for you.&quot;</span>, <span class="kw2">nil</span><span class="br0">&#41;</span>, friend<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">localNotif.alertAction <span class="sy0">=</span> NSLocalizedString<span class="br0">&#40;</span><span class="co3">@</span><span class="st0">&quot;Read Msg&quot;</span>, <span class="kw2">nil</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">localNotif.soundName <span class="sy0">=</span> <span class="co3">@</span><span class="st0">&quot;alarmsound.caf&quot;</span>;</div></li>
<li class="li1"><div class="de1">localNotif.applicationIconBadgeNumber <span class="sy0">=</span> <span class="nu0">1</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw5">NSDictionary</span> <span class="sy0">*</span>infoDict <span class="sy0">=</span> <span class="br0">&#91;</span><span class="kw5">NSDictionary</span> dictionaryWithObjectsAndKeys<span class="sy0">:</span><span class="co3">@</span><span class="st0">&quot;Your Background Task works&quot;</span>,ToDoItemKey, <span class="co3">@</span><span class="st0">&quot;Message from javacom&quot;</span>, MessageTitleKey, <span class="kw2">nil</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">localNotif.userInfo <span class="sy0">=</span> infoDict;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>application presentLocalNotificationNow<span class="sy0">:</span>localNotif<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>localNotif release<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">friend <span class="sy0">=</span> <span class="kw2">nil</span>;</div></li>
<li class="li1"><div class="de1"><span class="kw2">break</span>;</div></li>
<li class="li1"><div class="de1"><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"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>application endBackgroundTask<span class="sy0">:</span>self<span class="sy0">-</span>&gt;bgTask<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">self<span class="sy0">-</span>&gt;bgTask <span class="sy0">=</span> UIBackgroundTaskInvalid;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span><span class="br0">&#41;</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">&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>dealloc <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>window release<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>super dealloc<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1"><span class="kw1">@end</span></div></li>
</ol></div></div>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/local-notification-sample-code-os-4-0-only.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<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>UML диаграммы в Xcode</title>
		<link>http://www.developers-life.com/create-uml-models-in-xcode.html</link>
		<comments>http://www.developers-life.com/create-uml-models-in-xcode.html#comments</comments>
		<pubDate>Sat, 12 Jun 2010 15:03:36 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[others]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[UML]]></category>
		<category><![CDATA[xCode]]></category>
		<category><![CDATA[Кодинг]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=1031</guid>
		<description><![CDATA[На написание данного поста меня с подвигла недавняя задача! Мне нужно было для записки и слайдов дипломного проекта предоставить UML диаграммы. Сначала по гуглил и сразу попал на страницу одной софтины, которая называется MacTranslator, забегая на перед, т.к. многие могут просто не дочитать, НЕ РЕКОМЕНДУЮ ее покапать, хотя вряд ли ее кто и купит из [...]]]></description>
			<content:encoded><![CDATA[<p>На написание данного поста меня с подвигла недавняя задача! Мне нужно было для записки и слайдов дипломного проекта предоставить UML диаграммы. Сначала по гуглил и сразу попал на страницу одной софтины, которая называется MacTranslator, забегая на перед, т.к. многие могут просто не дочитать, НЕ РЕКОМЕНДУЮ ее покапать, хотя вряд ли ее кто и купит из читателей и простых серферов веба, т.к. софтина стоит 465$, если не ошибаюсь :)</p>
<p>Небольшое отступление:<em><br />
<span style="color: #808080;">С Xcode средой разработки я знаком уже почти 2 года, и с версиями ниже 3-ей не работал. Многое уже освоил, но занимаюсь изучением возможностей данной среды далее. Считаю, что много интересного я еще не знаю! </span></em></p>
<p>Далее я нашел много интересного программного обеспечения, но ни один из продуктов мне не пришелся по вкусу и функционалу, всего 2 продукта поддерживали Objective-C, что весьма печально. В итоге я начал рисовать вручную и когда зашел в Xcode меня осенило, что я зря провел время на поиски! На сегодняшний день Xcode может все сделать за вас! Как давно есть этот функционал я не задавался вопросом, но по моим предположениям и по скриншотам, могу предположить что довольна таки давно, примерно с 2006 года точно! Судя по <a href="http://developer.apple.com/macosx/xcode2.html" target="_blank">данному документу</a>!</p>
<p>Немного еще поискав по <a href="http://developer.apple.com/mac/search/search.php" target="_blank">девелоперской</a> части сайта , наткнулся на <a href="http://developer.apple.com/mac/library/documentation/DeveloperTools/Conceptual/XCodeDesignTools/Introduction/Introduction.html#//apple_ref/doc/uid/TP40006858-SW1" target="_blank">Introduction to Xcode Design Tools for Class Modeling</a></p>
<p>Кратко о том как это делается, на одном из семплов от Apple, к примеру &#8220;QuartzDemo&#8221;:</p>
<p>1. Добавляем новый фаил &#8220;Class Model&#8221;<br />
<a href="http://www.developers-life.com/wp-content/uploads/2010/06/Screen-shot-2010-06-12-at-5.42.52-PM.png" target="_blank"><img class="alignnone size-medium wp-image-1032" title="Добавление файла в Xcode для отображения UML из исходного кода Objective-C, UML from Objective-C source code" src="http://www.developers-life.com/wp-content/uploads/2010/06/Screen-shot-2010-06-12-at-5.42.52-PM-300x227.png" alt="Добавление файла в Xcode для отображения UML из исходного кода Objective-C, UML from Objective-C source code" width="300" height="227" /></a></p>
<p><span id="more-1031"></span>2. Добавляем в него файлы и нажимаем &#8220;Finish&#8221;<br />
<a href="http://www.developers-life.com/wp-content/uploads/2010/06/Screen-shot-2010-06-12-at-5.43.36-PM.png" target="_blank"><img class="alignnone size-medium wp-image-1033" title="Create Class Model" src="http://www.developers-life.com/wp-content/uploads/2010/06/Screen-shot-2010-06-12-at-5.43.36-PM-300x227.png" alt="Create Class Model" width="300" height="227" /></a></p>
<p>3. В итоге мы увидим UML диаграммы, но они будут немного не наглядно выстраены, это легко поправимо, результат:</p>
<p><a href="http://www.developers-life.com/wp-content/uploads/2010/06/Screen-shot-2010-06-12-at-5.47.26-PM.png" target="_blank"><img class="alignnone size-medium wp-image-1034" title="UML Xcode" src="http://www.developers-life.com/wp-content/uploads/2010/06/Screen-shot-2010-06-12-at-5.47.26-PM-300x192.png" alt="UML Xcode" width="300" height="192" /></a><br />
<a href="http://www.developers-life.com/wp-content/uploads/2010/06/Screen-shot-2010-06-12-at-5.47.41-PM.png" target="_blank"><img class="alignnone size-medium wp-image-1035" title="UML Xcode" src="http://www.developers-life.com/wp-content/uploads/2010/06/Screen-shot-2010-06-12-at-5.47.41-PM-300x192.png" alt="UML Xcode" width="300" height="192" /></a></p>
<p>В каждом блоке можно развернуть Properties и Operations! Из каждого элемента можно легко перейти к участку кода!</p>
<p>Рекомендую использовать для наглядности. Очень помогает когда возвращаешся к старому проекту. Плюсов очень много.</p>
<p>Хочу сказать, что все оказалось очень просто и довольна таки красиво, вот к примеру мои UML диаграммы на стадии разработки одного из моих проектов, текст специально мелкий, чтоб не возможно было прочитать :)</p>
<p><img class="alignnone size-medium wp-image-1036" src="http://www.developers-life.com/wp-content/uploads/2010/06/Screen-shot-2010-06-12-at-5.17.27-PM-300x179.png" alt="" width="300" height="179" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/create-uml-models-in-xcode.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>В свободное время</title>
		<link>http://www.developers-life.com/free-time-for-vkontakter.html</link>
		<comments>http://www.developers-life.com/free-time-for-vkontakter.html#comments</comments>
		<pubDate>Sun, 02 May 2010 14:22:12 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Free Time]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[Vkontakte]]></category>
		<category><![CDATA[xCode]]></category>
		<category><![CDATA[Кодинг]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=956</guid>
		<description><![CDATA[
В свободное время решил поработать немного над созданием простого  клиента для социальной сети &#8220;Вконтакте&#8221;. Хочу поделиться маленьким результатом. Это пока скромная версия, которая  может вывести список, отправить сообщение, изменить статус и еще  несколько мелочей&#8230;
Я не руководился тем нужно это или нет, просто было  интересно поработать с новым API от &#8220;Вконтакте&#8221;.
Спасибо за [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://gyazo.com/d30b6d825cffe79eaa2a89508e37481c.png"><img class="alignleft" title="Vkontakter" src="http://gyazo.com/d30b6d825cffe79eaa2a89508e37481c.png" alt="Vkontakter" width="226" height="509" /></a></p>
<p>В свободное время решил поработать немного над созданием простого  клиента для социальной сети &#8220;Вконтакте&#8221;. Хочу поделиться маленьким результатом. Это пока скромная версия, которая  может вывести список, отправить сообщение, изменить статус и еще  несколько мелочей&#8230;</p>
<p>Я не руководился тем нужно это или нет, просто было  интересно поработать с новым API от &#8220;Вконтакте&#8221;.</p>
<p>Спасибо за внимания,  если получится что-то хорошее, то возможно появится и для общего  пользования.</p>
<p>P.S.: Хочу заметить, что этот проект больше для повышения опыта разработки и не поддается критике :)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/free-time-for-vkontakter.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tutorial: Drag and Drop file on NSImageView</title>
		<link>http://www.developers-life.com/tutorial-drag-and-drop-file-on-nsimageview.html</link>
		<comments>http://www.developers-life.com/tutorial-drag-and-drop-file-on-nsimageview.html#comments</comments>
		<pubDate>Fri, 26 Feb 2010 19:44:07 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[NS]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[xCode]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=906</guid>
		<description><![CDATA[Step by step for starter developers&#8230;
1. Create a project in xCode with name &#8220;DragAndDrop&#8221; or any else&#8230;2. Add an element &#8220;NSImageView&#8221; on main view in the MainMenu.xib
3. Add files NSCImageView.m/NSCImageView.h to project with subclass of UIView
4. Replace &#8220;NSImageView&#8221; name class on &#8220;NSCImageView&#8221; in the NSImageView objec
5.  Change subclass &#8220;NSView&#8221; to &#8220;NSImageView&#8221; 
6. Remove all methods [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">Step by step for starter developers&#8230;</p>
<p style="text-align: left;">1. Create a project in xCode with name &#8220;DragAndDrop&#8221; or any else&#8230;<img class="aligncenter" title="create project in xCode" src="http://gyazo.com/9ea3585c0c6a3b480e03fe4ca78ded52.png" alt="" width="312" height="225" />2. Add an element &#8220;NSImageView&#8221; on main view in the MainMenu.xib<a href="http://gyazo.com/efaf33a18871e46e8bc2761227b56a98.png" target="_blank"><img class="aligncenter" title="add an element on xib" src="http://gyazo.com/efaf33a18871e46e8bc2761227b56a98.png" alt="" width="295" height="194" /></a></p>
<p style="text-align: left;"><span id="more-906"></span>3. Add files NSCImageView.m/NSCImageView.h to project with subclass of UIView<a href="http://gyazo.com/5237bf8c7b0c18668f5e06f46547f455.png" target="_blank"><img class="aligncenter" title="add file to project" src="http://gyazo.com/5237bf8c7b0c18668f5e06f46547f455.png" alt="" width="312" height="225" /></a></p>
<p style="text-align: left;">4. Replace &#8220;NSImageView&#8221; name class on &#8220;NSCImageView&#8221; in the NSImageView objec<a href="http://gyazo.com/4e58ec405a87537a97873722dfb89480.png" target="_blank"><img class="aligncenter" src="http://gyazo.com/4e58ec405a87537a97873722dfb89480.png" alt="" width="302" height="219" /></a></p>
<p style="text-align: left;">5.  Change subclass &#8220;NSView&#8221; to &#8220;NSImageView&#8221; <a href="http://gyazo.com/21f607749b9ae6b7ca9db2ed6c70a397.png" target="_blank"><img class="aligncenter" src="http://gyazo.com/21f607749b9ae6b7ca9db2ed6c70a397.png" alt="" width="486" height="80" /></a></p>
<p style="text-align: left;">6. Remove all methods from *.m file<br />
<a href="http://gyazo.com/4a54590860e5a121d455a06b8af9bacd.png" target="_blank"><img class="aligncenter" src="http://gyazo.com/4a54590860e5a121d455a06b8af9bacd.png" alt="" width="307" height="99" /></a></p>
<p style="text-align: left;">7. Methods for getting entering and exit of dragging<br />
<a href="http://gyazo.com/8ed37c3278f48b5e8526136666400cbe.png" target="_blank"><img class="aligncenter" src="http://gyazo.com/8ed37c3278f48b5e8526136666400cbe.png" alt="" width="333" height="242" /></a></p>
<p style="text-align: left;">8. Method for checking information of dragging result<br />
<a href="http://gyazo.com/369f2fe283afda08246f3ddd9b33f10f.png" target="_blank"><img class="aligncenter" src="http://gyazo.com/369f2fe283afda08246f3ddd9b33f10f.png" alt="" width="355" height="513" /></a></p>
<p style="text-align: left;"><a href="http://pastie.org/844655.txt" target="_blank">Source of NSCImageView.m</a></p>
<p style="text-align: left;"><em>Note: If you make drag and drop with NSView and any other object, you will need add this code: </em></p>
<div class="codecolorer-container objc"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="br0">&#91;</span>self registerForDraggedTypes<span class="sy0">:</span><span class="br0">&#91;</span><span class="kw5">NSArray</span> arrayWithObjects<span class="sy0">:</span>NSTIFFPboardType, </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;NSFilenamesPboardType, <span class="kw2">nil</span><span class="br0">&#93;</span><span class="br0">&#93;</span>;</div></li>
</ol></div></div>
<p style="text-align: left;">
<p style="text-align: left;">
<p style="text-align: left;">Result:</p>
<p style="text-align: left;"><a href="http://gyazo.com/4ce91dbd50ae4bf5f6fc640affc375c7.png" target="_blank"><img class="alignleft" src="http://gyazo.com/4ce91dbd50ae4bf5f6fc640affc375c7.png" alt="" width="202" height="166" /></a><a href="http://gyazo.com/c7e0e408f15ecfb7e8395e43c61a40fb.png" target="_blank"><img class="alignnone" src="http://gyazo.com/c7e0e408f15ecfb7e8395e43c61a40fb.png" alt="" width="202" height="166" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/tutorial-drag-and-drop-file-on-nsimageview.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Does a NSString contain a substring ?</title>
		<link>http://www.developers-life.com/does-a-nsstring-contain-a-substring.html</link>
		<comments>http://www.developers-life.com/does-a-nsstring-contain-a-substring.html#comments</comments>
		<pubDate>Fri, 15 Jan 2010 19:14:36 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[NSString]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[xCode]]></category>
		<category><![CDATA[Кодинг]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=772</guid>
		<description><![CDATA[Here is a little tip on how to tell if a string contains another string, using the underused data type NSRange.
NSRange gives the starting location and the length of a given value, and is often used with arrays and strings. On this occasion we will use it to find the range of a substring within [...]]]></description>
			<content:encoded><![CDATA[<p>Here is a little tip on how to tell if a string contains another string, using the underused data type NSRange.</p>
<p>NSRange gives the starting location and the length of a given value, and is often used with arrays and strings. On this occasion we will use it to find the range of a substring within another string. If the range has a location, it contains the given substring. The following code does just that.</p>
<div class="codecolorer-container objc"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="kw4">NSRange</span> textRange <span class="sy0">=</span> <span class="br0">&#91;</span><span class="kw4">string</span> rangeOfString<span class="sy0">:</span>substring<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span>textRange.location <span class="sy0">!=</span> NSNotFound<span class="br0">&#41;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1"><span class="co2">//Does contain the substring</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div></div>
<p>Making this a case insensitive compare is also very trivial, and can be done by lowercasing both strings</p>
<div class="codecolorer-container objc"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="kw4">NSRange</span> textRange <span class="sy0">=</span> <span class="br0">&#91;</span><span class="br0">&#91;</span><span class="kw4">string</span> lowercaseString<span class="br0">&#93;</span> rangeOfString<span class="sy0">:</span><span class="br0">&#91;</span>substring lowercaseString<span class="br0">&#93;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span>textRange.location <span class="sy0">!=</span> NSNotFound<span class="br0">&#41;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1"><span class="co2">//Does contain the substring</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div></div>
<p><noindex><a href="http://objcolumnist.com/2009/04/12/does-a-nsstring-contain-a-substring/">from</a></noindex></p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/does-a-nsstring-contain-a-substring.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>call controller methods from class</title>
		<link>http://www.developers-life.com/call-controller-methods-from-class.html</link>
		<comments>http://www.developers-life.com/call-controller-methods-from-class.html#comments</comments>
		<pubDate>Thu, 14 Jan 2010 04:24:09 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[OOP]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[xCode]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=769</guid>
		<description><![CDATA[I created a class (Foo.m) which I would like to be able to call a method in the controller (MainViewController.m) which instantiated it. How do I do this?
One way you can do this is to create a property in your Foo class that references its creator. You should not retain this reference to avoid circular [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>I created a class (Foo.m) which I would like to be able to call a method in the controller (MainViewController.m) which instantiated it. How do I do this?</p></blockquote>
<p>One way you can do this is to create a property in your Foo class that references its creator. You should not retain this reference to avoid circular references, but the code might look like the following</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> yourControllerClassMethod <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; Foo<span class="sy0">*</span> f <span class="sy0">=</span> <span class="br0">&#91;</span><span class="br0">&#91;</span>Foo 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>f setOwnder<span class="sy0">:</span>self<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div></div>
<p>In this case, your Foo class has a property called owner which is set when the Controller class makes a new Foo instance. Now from your Foo class you can call controller methods like this:</p>
<div class="codecolorer-container objc" style="height:35px;"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="br0">&#91;</span><span class="br0">&#91;</span>self owner<span class="br0">&#93;</span> callSomeControllerMethod<span class="br0">&#93;</span>;</div></li>
</ol></div></div>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/call-controller-methods-from-class.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello Music Player</title>
		<link>http://www.developers-life.com/hello-music-player.html</link>
		<comments>http://www.developers-life.com/hello-music-player.html#comments</comments>
		<pubDate>Thu, 07 Jan 2010 06:22:12 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[MediaPlayer]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[UIKit]]></category>
		<category><![CDATA[xCode]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=755</guid>
		<description><![CDATA[Here is a bare bones hello world-style example that demonstrates library access and music playback. In a few minutes you can have a working, if minimal, music player. Lacking a user interface, this code queues up the entire iPod library and starts playing immediately on launch.
Note: To follow these steps you’ll need a provisioned device [...]]]></description>
			<content:encoded><![CDATA[<p>Here is a bare bones hello world-style example that demonstrates library access and music playback. In a few minutes you can have a working, if minimal, music player. Lacking a user interface, this code queues up the entire iPod library and starts playing immediately on launch.</p>
<p><em>Note: To follow these steps you’ll need a provisioned device because the Simulator has no access to a device’s iPod library.</em></p>
<ol>
<li><strong>Create a new Xcode project.</strong>
<p>In Xcode, create a new project using the Window-based Application template. In the project window, add the MediaPlayer framework to the Frameworks group. Save the project.</li>
<li><strong>Import the umbrella header file for the Media Player framework.</strong>
<p>Add the following line to the AppDelegate.h file, after the existing #import line:</p>
<div>
<table border="0">
<tbody>
<tr>
<td scope="row">
<div class="codecolorer-container objc" style="height:35px;"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="co1">#import &lt;MediaPlayer/MediaPlayer.h&gt;</span></div></li>
</ol></div></div>
</td>
</tr>
</tbody>
</table>
</div>
</li>
<li><strong>Add code to create a music player, assign it music to play, and start playback.</strong>
<p>Open the project’s AppDelegate.m implementation file. Before the end of the applicationDidFinishLaunching: block, add the three lines of code shown in <span>Listing 1-1</span>.</p>
<p><strong>Listing 1-1 </strong>A very bare-bones music player</p>
<div>
<div class="codecolorer-container objc"><div class="objc codecolorer"><ol><li class="li1"><div class="de1"><span class="co2">// instantiate a music player</span></div></li>
<li class="li1"><div class="de1">MPMusicPlayerController <span class="sy0">*</span>myPlayer <span class="sy0">=</span> <span class="br0">&#91;</span>MPMusicPlayerController applicationMusicPlayer<span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="co2">// assign a playback queue containing all media items on the device</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>myPlayer setQueueWithQuery<span class="sy0">:</span> <span class="br0">&#91;</span>MPMediaQuery songsQuery<span class="br0">&#93;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="co2">// start playing from the beginning of the queue</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#91;</span>myPlayer play<span class="br0">&#93;</span>;</div></li>
</ol></div></div>
</div>
</li>
</ol>
<p>Now, configure your project appropriately for your development device, which includes setting the code-signing identity and the bundle identifier. Also, ensure that the device has at least one song in its iPod library. Build and run the project. When the application launches on the device, the first song in the iPod library starts playing. The player continues to play through all the items in the iPod library or until you quit the application.</p>
<h5>About Music Player Change Notifications</h5>
<p>To keep track of what a music player is doing, you register for music player change notifications. This is essential for ensuring that your application’s state and the music player’s state are well coordinated.</p>
<p>For example, here is the sequence of events for correctly starting up music playback. Notice that, because music players operate on their own threads, you do not update your user interface until receiving the appropriate notification.</p>
<ol>
<li>A user taps Play.</li>
<li>Your application invokes playback on the music player.</li>
<li>The music player starts playing and issues a playback-state-change notification.</li>
<li>Your application receives the notification and queries the music player’s state, confirming that it is indeed playing.</li>
<li>Your application updates its user interface accordingly—perhaps changing the Play button to say Pause.</li>
</ol>
<p>Music player change notifications support keeping track of playback state, the now-playing item, and the music player’s playback volume. <span>“Using Media Playback”</span> explains how to use them.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/hello-music-player.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Resize and Mask an Image</title>
		<link>http://www.developers-life.com/resize-and-mask-an-image.html</link>
		<comments>http://www.developers-life.com/resize-and-mask-an-image.html#comments</comments>
		<pubDate>Sat, 26 Dec 2009 19:37:12 +0000</pubDate>
		<dc:creator>Vladimir Boychentsov</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[Texture]]></category>
		<category><![CDATA[UIKit]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[xCode]]></category>
		<category><![CDATA[Кодинг]]></category>

		<guid isPermaLink="false">http://www.developers-life.com/?p=698</guid>
		<description><![CDATA[Make image with a mask!

 
Source:
- &#40;UIImage*&#41; maskImage:&#40;UIImage *&#41;image &#160;&#123;
&#160; &#160; 
&#160; &#160; CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB&#40;&#41;;
&#160; &#160; 
&#160; &#160; UIImage *maskImage = &#91;UIImage imageNamed:@&#34;mask.png&#34;&#93;;
&#160; &#160; CGImageRef maskImageRef = &#91;maskImage CGImage&#93;;
&#160; &#160; 
&#160; &#160; // create a bitmap graphics context the size of the image
&#160; &#160; CGContextRef mainViewContentContext = CGBitmapContextCreate &#40;NULL, maskImage.size.width, maskImage.size.height, 8, 0, [...]]]></description>
			<content:encoded><![CDATA[<p>Make image with a mask!</p>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/2id4pPmoCwQ&#038;hl=en_US&#038;fs=1&#038;rel=0&#038;color1=0x3a3a3a&#038;color2=0x999999"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/2id4pPmoCwQ&#038;hl=en_US&#038;fs=1&#038;rel=0&#038;color1=0x3a3a3a&#038;color2=0x999999" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object><br />
 </p>
<p>Source:</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> maskImage<span class="sy0">:</span><span class="br0">&#40;</span>UIImage <span class="sy0">*</span><span class="br0">&#41;</span>image &nbsp;<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; CGColorSpaceRef colorSpace <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; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; UIImage <span class="sy0">*</span>maskImage <span class="sy0">=</span> <span class="br0">&#91;</span>UIImage imageNamed<span class="sy0">:</span><span class="co3">@</span><span class="st0">&quot;mask.png&quot;</span><span class="br0">&#93;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGImageRef maskImageRef <span class="sy0">=</span> <span class="br0">&#91;</span>maskImage CGImage<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="co2">// create a bitmap graphics context the size of the image</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGContextRef mainViewContentContext <span class="sy0">=</span> CGBitmapContextCreate <span class="br0">&#40;</span><span class="kw2">NULL</span>, maskImage.size.width, maskImage.size.height, <span class="nu0">8</span>, <span class="nu0">0</span>, colorSpace, kCGImageAlphaPremultipliedLast<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; </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>mainViewContentContext<span class="sy0">==</span><span class="kw2">NULL</span><span class="br0">&#41;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="kw2">NULL</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGFloat ratio <span class="sy0">=</span> <span class="nu0">0</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; ratio <span class="sy0">=</span> maskImage.size.width<span class="sy0">/</span> image.size.width;</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>ratio <span class="sy0">*</span> image.size.height &lt; maskImage.size.height<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; ratio <span class="sy0">=</span> maskImage.size.height<span class="sy0">/</span> image.size.height;</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; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGRect rect1 &nbsp;<span class="sy0">=</span> <span class="br0">&#123;</span><span class="br0">&#123;</span><span class="nu0">0</span>, <span class="nu0">0</span><span class="br0">&#125;</span>, <span class="br0">&#123;</span>maskImage.size.width, maskImage.size.height<span class="br0">&#125;</span><span class="br0">&#125;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGRect rect2 &nbsp;<span class="sy0">=</span> <span class="br0">&#123;</span><span class="br0">&#123;</span><span class="sy0">-</span><span class="br0">&#40;</span><span class="br0">&#40;</span>image.size.width<span class="sy0">*</span>ratio<span class="br0">&#41;</span><span class="sy0">-</span>maskImage.size.width<span class="br0">&#41;</span><span class="sy0">/</span><span class="nu0">2</span> , <span class="sy0">-</span><span class="br0">&#40;</span><span class="br0">&#40;</span>image.size.height<span class="sy0">*</span>ratio<span class="br0">&#41;</span><span class="sy0">-</span>maskImage.size.height<span class="br0">&#41;</span><span class="sy0">/</span><span class="nu0">2</span><span class="br0">&#125;</span>, <span class="br0">&#123;</span>image.size.width<span class="sy0">*</span>ratio, image.size.height<span class="sy0">*</span>ratio<span class="br0">&#125;</span><span class="br0">&#125;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGContextClipToMask<span class="br0">&#40;</span>mainViewContentContext, rect1, maskImageRef<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGContextDrawImage<span class="br0">&#40;</span>mainViewContentContext, rect2, image.CGImage<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="co2">// Create CGImageRef of the main view bitmap content, and then</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="co2">// release that bitmap context</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGImageRef newImage <span class="sy0">=</span> CGBitmapContextCreateImage<span class="br0">&#40;</span>mainViewContentContext<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; CGContextRelease<span class="br0">&#40;</span>mainViewContentContext<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; UIImage <span class="sy0">*</span>theImage <span class="sy0">=</span> <span class="br0">&#91;</span>UIImage imageWithCGImage<span class="sy0">:</span>newImage<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; CGImageRelease<span class="br0">&#40;</span>newImage<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; </div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="co2">// return the image</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw1">return</span> theImage;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
</ol></div></div>
<p></p>
<p><a href="http://depositfiles.com/files/yitpbu87l" style="color:red;">Download Sources of Project</a> </p>
<p><span id="more-698"></span><br />
</p>
<p>Mask:<br />
<img alt="" src="http://gyazo.com/c0be2fb7a12947575d31ecd0fc0ad8da.png" class="alignnone" width="150" height="200" /><br />
<br />
Default image:<br />
<img alt="" src="http://gyazo.com/1d5cfffd9bd81ff423b8dbeb463379f9.png" class="alignnone" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.developers-life.com/resize-and-mask-an-image.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
