Сохранение заголовка NSSegmentedControl в пользовательских настройках по умолчанию - PullRequest
0 голосов
/ 22 января 2011

Спасибо за помощь:

Я вручную устанавливаю заголовок сегмента segController из ввода textField следующим образом:

NSString  *labelString = [textField stringValue];
(textField.stringValue = labelString);
[segControl setLabel: labelString forSegment:8];

Я теряю новый ярлык при выходе. Как я могу сохранить отредактированную строку метки segController в NSUserDefaults так же, как и с текстовой строкой, например:

    [[NSUserDefaults standardUserDefaults] setObject: [textField objectValue] forKey: @"newDefault"];

Мое действие должно время от времени устанавливать новый заголовок. Точка - строка метки, которая не является фиксированной.

спасибо.

Paul.

1 Ответ

0 голосов
/ 22 января 2011

Предполагая, что вы знаете номер сегмента, вы можете сделать следующее:

NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
if(defaults) {
    [defaults setValue: [segControl labelForSegment:8] forKey: @"segmentLabel"];
}
else {
    // handle error
}

В качестве альтернативы вы можете просто сохранить строку в NSUserDefaults всякий раз, когда вы устанавливаете метку, как в приведенном выше примере.

...