I found that I need some place to show a version in my apps, because otherwise I and my testers never know if we are talking about the same version. A problem they might be having could have already been fixed previously. Without a version info you are at a loss.
Here’s a version info box, that I came up with. This shows how to access the version string from Info.plist as well as open a new mail to the author.
- (IBAction) showAppInfo:(id)sender { // a convenient method to get to the Info.plist in the app bundle NSDictionary *info = [[NSBundle mainBundle] infoDictionary]; // get two items from the dictionary NSString *version = [info objectForKey:@"CFBundleVersion"]; NSString *title = [info objectForKey:@"CFBundleDisplayName"]; UIAlertView *alert = [[UIAlertView alloc] initWithTitle:[@"About " stringByAppendingString:title] message:[NSString stringWithFormat:@"Version %@\n\n© 2009 Drobnik.com", version] delegate:self cancelButtonTitle:@"Dismiss" otherButtonTitles:@"Contact", nil]; [alert show]; [alert release]; } |
// this function from UIAlertViewDelegate is called when a button is pushed - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex { UIApplication *myApp = [UIApplication sharedApplication]; // cancel button has index 0 switch (buttonIndex) { case 1: { [myApp openURL:[NSURL URLWithString:@"mailto:oliver@drobnik.com"]]; break; } default: break; } } |
Two buttons are displayed side by side. Three or more are vertically stacked. This is how the result from the code about looks like:
Categories: Recipes