* You are viewing Posts Tagged ‘Apple’

Used iPhones are still worth big money!

A month or so ago I finally broke down and upgraded our iPhones to 3G, and sold our old ones on Ebay. It worked out well.

Bought - 2 16gb iPhone 3Gs, $300 each + tax & misc AT&T fees.
Sold - 2 8gb first gen iPhones for $330 and $335 - about $20 each for Ebay/Paypal fees and shipping.

So the initial purchase is pretty well canceled out. The new service plan is eligible for corporate discounts, so hopefully my discount will cancel out the more costly monthly bill.

Use NSUserDefaults to persist data between app runs

On the iPhone you generally want your application to start looking like it did when it was last run to give the user the impression your app is ready to pick up where it left off. NSUserDefaults provides an easy way to store your application’s settings between runs. Simply create an instance of NSUserDefaults and give it the key/value pairs you want it to save.

Storing an integer

NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
[prefs setInteger: myIntValue forKey: @"intValueKey"];
[prefs synchronize]; // writes modifications to disk

Reading it back in

NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
int myIntValue = [prefs integerForKey: @"intValueKey"];

or more simply

int myIntValue = [[NSUserDefaults standardUserDefaults] integerForKey: … Continue Reading

NSNotificationCenter

I just learned about NSNotificationCenter. Any class in a program can send a notification message to the notification center, and all classes can listen to the center and respond to messages that apply to it. It’s kind of like a callback, but really not.

This is part of my code for implementing a custom keyboard in my iPhone app.

To send a notification named “keyboardDone” to all objects in your program.
[[NSNotificationCenter defaultCenter] postNotificationName: @”keyboardDone” object: nil];

To listen for the “keyboardDone” notification and call the “keyboardDoneObserver:” method when it’s received this can be added to your class’ init code.
[[NSNotificationCenter defaultCenter] addObserver: self … Continue Reading

Adding a code beautifier script to Xcode

Xcode’s re-indent command is pretty weak compared to the code reformatting built into other IDEs. It fixes the indentation at the beginning on each line, which makes a huge difference in code readability, but I don’t think it does anything else. In Eclipse and VS I’ve gotten used to being fairly lazy about being consistent with my spacing elsewhere and relying on their built in reformatting to clean it up for me. I wanted to change the way Xcode reformats code, since it’s easier to change tools than to break bad habits.

I spent some time searching for command line code … Continue Reading