Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198

Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198

Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198

Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198
PreferenceBundles - iPhone Development Wiki

PreferenceBundles

From iPhone Development Wiki
Revision as of 19:42, 29 October 2009 by Kimcha (talk | contribs) (→‎Cell Types)
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Preference Bundles are bundles for extending the Settings application.

Structure of a Preference Bundle

Preference bundles should have an extension of .bundle. The principle class of the bundle should be a subclass of PSListController. Most of the time there are lots of preference specifier plists which defines a page of setting. If a specifier plist is called spec.plist, there should be a corresponding localization file called spec.strings. The bundle can have a 29×29 icon, with a preferred name of icon.png.

Adding a Preference Bundle

To add a preference bundle foo.bundle to the front page of the Settings application, save this as a plist in /Library/PreferenceLoader/Preferences/:

entry = {
  bundle = foo;
  cell = PSLinkCell;
  icon = icon.png;
  isController = 1;
  label = "Description of the setting";
};

PSTitleValueCell

Displaying a value with PSTitleValueCell like Preferences -> General -> About Add the cell to your plist:

        {
           cell = PSTitleValueCell;
           get = "valueForSpecifier:";
           label = Version;
       },

Add the getter method to your controller:

- (NSString *) valueForSpecifier: (PSSpecifier *) specifier {

	return @"1.0";
}

References