在调整中使用HBPreferences

时间:2015-12-23 05:26:02

标签: ios objective-c jailbreak theos

我们什么时候使用这个?它注册一个变量!我们可以使用iPhonedevwiki中给出的旧的简单方法来完成此操作,并添加一个观察者来观察偏好中所做的更改。但我看到一些调整使用HBPreferences而不是iPhonedevwiki中给出的方法。有人可以告诉我它是如何工作的,它比iPhonedevwiki中给出的方法更好吗?谢谢。

1 个答案:

答案 0 :(得分:0)

您可以像这样使用

static NSString *const kHBCBPreferencesDomain = @"ws.hbang.cobalia";
static NSString *const kHBCBPreferencesEnabledKey = @"Enabled";
static NSString *const kHBCBPreferencesSwitchesKey = @"Switches";
static NSString *const kHBCBPreferencesSectionLabelKey = @"SectionLabel";
static NSString *const kHBCBPreferencesSwitchLabelsKey = @"SwitchLabels";

HBPreferences *preferences = [[HBPreferences alloc] initWithIdentifier:kHBCBPreferencesDomain];

[preferences registerDefaults:@{
    kHBCBPreferencesEnabledKey: @YES,
    kHBCBPreferencesSwitchesKey: @[ /* ... */ ],
    kHBCBPreferencesSectionLabelKey: @YES,
    kHBCBPreferencesSwitchLabelsKey: @YES
}];

添加观察员进行更改

void HBCBPreferencesChanged() {
    //Will be called when changes occur
}

/* Call this function to register an observer */
void addObserver(){
    CFNotificationCenterAddObserver(CFNotificationCenterGetDarwinNotifyCenter(), NULL, (CFNotificationCallback)HBCBPreferencesChanged, CFSTR("ws.hbang.cobalia/ReloadPrefs"), NULL, kNilOptions);
}

您可以详细了解HereHere