PSListController: Difference between revisions

From iPhone Development Wiki
m (Move the occlass template call back to the top, because I'm ambivalent.)
m (Unnecessary change inconsistent with standard)
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{occlass|framework=Preferences}}
'''PSListController''' is a class that represents a list of preferences in a table. It supports loading [[PSSpecifier|specifiers]] from a property list (specified at runtime).
Provides a generic preferences list, with support for loading [[PSSpecifier|specifiers]] from a property list and writing to user defaults.


This class is typically subclassed in creating custom PreferenceBundles.
== Subclassing ==
 
This is a simple PSListController subclass that does not offer localization. The only message strictly required is -specifiers.
 
<source lang="objc">
@interface MyListController : PSListController
@end
@implementation MyListController
- (id)specifiers {
    if(_specifiers == nil) {
        // Loads specifiers from Name.plist from the bundle we're a part of.
        _specifiers = [[self loadSpecifiersFromPlistName:@"Name" target:self] retain];
    }
    return _specifiers;
}
@end
</source>
 
{{occlass|library=Preferences.framework|navbox=1}}
[[Category:Preferences]]

Latest revision as of 02:50, 11 April 2016

PSListController is a class that represents a list of preferences in a table. It supports loading specifiers from a property list (specified at runtime).

Subclassing

This is a simple PSListController subclass that does not offer localization. The only message strictly required is -specifiers.

@interface MyListController : PSListController
@end
@implementation MyListController
- (id)specifiers {
    if(_specifiers == nil) {
        // Loads specifiers from Name.plist from the bundle we're a part of.
        _specifiers = [[self loadSpecifiersFromPlistName:@"Name" target:self] retain];
    }
    return _specifiers;
}
@end