iPhone Code Snippets & Tutorials

I know I have been fairly silent here lately, but I have been pretty busy. I want to point you all to a resource to hold you over until I get some time to push out another tutorial. John at ManiacDev.com has created a great tutorial utilizing the Sparrow 2D Game Framework.

Be sure to check it out at the source link below.

[Source: ManiacDev.com]

Apple has officially released the source code to the 1984 graphics application MacPaint as well as the source code to Quickdraw to the Computer History Museum. Follow the link below for more details. Hope you aren’t too rusty with your Pascal and 68000 Assembler programming skills.


The site has some nice history on the development of MacPaint and Quickdraw. I strongly encourage all developers to read it and try not to smile when you read the quotes like this:

When the Lisa team was pushing to finalize their software in 1982, project managers started requiring programmers to submit weekly forms reporting on the number of lines of code they had written. Bill Atkinson thought that was silly. For the week in which he had rewritten QuickDraw’s region calculation routines to be six times faster and 2000 lines shorter, he put “-2000″ on the form. After a few more weeks the managers stopped asking him to fill out the form, and he gladly complied.

[Source: Computer History Museum]

Let’s say you have a view overlaying another view that you would like to close in a fancy fashion when the user click a button, thus displaying the view directly below it. Put this code as your button’s IBAction message handler and tell me that doesn’t spice up your app like crazy! I am not going to explain how it looks, just try it. You’ll love it. It’s a nice use of code blocks too. :)

-(IBAction)onButtonClick:(id)sender {
	[UIView transitionWithView:self.view duration:0.2 options:UIViewAnimationOptionTransitionFlipFromLeft animations:^{
		self.view.frame = CGRectOffset(self.view.frame, 0, -self.view.frame.size.height);
	} completion:^(BOOL finished) {
		[self.view removeFromSuperview];
		[self release];
	}];
}

The learning curve of Cocoa can be steep depending on your background, but it’s a climb that is sure to leave a smile on your face every few steps of the way. Just enough to offset the hair pulling and cursing that is sure to ensue from jumping into Cocoa programming for the first time. One of the features that sweetened things up for me was Cocoa’s UIView animation capabilities. There is a lot to cover, and I just don’t have the time to even think about how to approach a lesson on all the animation features. I will give you an example of basic animation and a possible implementation and point you in the direction of Apple’s documentation so that you can build upon what you learned here.

For more information make sure to read Apple’s documentation on the UIView class. There is a lot more you can do with but let this be simply a foundation for you to learn the basic concept.


(more…)

Here is the source code to a simple iPhone project I made that demonstrates a Table View-Based Application with a Navigation Bar Controller to manage the subsidiary screens of content. This application creates a Table View Controller that manages a Table View. The Table View displays a list of color names. When a table cell is selected, a screen of the appropriate color is displayed. Navigation between the table view and the subsidiary screens is managed by a Navigation Bar Controller. The Table View Controller serves as the First (or Root) View Controller of the Navigation Bar Controller.




(more…)

Here is the source code to a simple iPhone project I made that demonstrates the Navigation Controller.




(more…)

Here is the source code to a simple project I made in an iPhone development class I took. Click the + and – signs to increase / decrease the number of sides on the polygon. It was one of the funner projects in that class, so I wanted to share my solution to it.




(more…)

If you were previously loading a UIImage with initWithContentsOfFile, you will need to change your code slightly if you want to support the high resolution capabilities of the iPhone 4 retina display. (more…)

I updated SpaceBubble to support the retina display on the iPhone 4. It was quite simple really, just had to change a few lines of code, rebuild my Entitlements.plist file, and add high resolution images.




Here is the updated Objective-C source code to my iPhone game SpaceBubble! (more…)

You can read all of Apple’s iPhone development documentation and still be a bit lost, especially if you are coming from programming on a different platform. When people ask me how I learned computer programming I tell them everything I learned was looking at how other people did it. And what I am referring to of course, is open source. John Dowa at ManiacDev has compiled an extensive list of open source iPhone apps, each one published in Apple’s iPhone App Store. (more…)

Twitter Me