iOS Сохранение выбора UISegmentedControl в NSUserDefaults - PullRequest
3 голосов
/ 08 декабря 2010

Есть ли способ сохранить значение UISegmentedControl в NSUserDefaults? Должен ли я использовать его как целочисленное значение в NSUserDefaults?

1 Ответ

5 голосов
/ 08 декабря 2010

Вы бы просто использовали selectedSegmentIndex: метод UISegmentedControl , а затем использовали бы setInteger: forKey: метод в NSUserDefaults .Причина этого (как вы, похоже, намекаете в своем вопросе) заключается в том, что метод selectedSegmentIndex возвращает NSInteger.(Его полная подпись метода: @property(nonatomic) NSInteger selectedSegmentIndex)

Когда вы перезагрузите свое приложение, вы должны установить соответствующий сегмент в активный (еще раз через selectedSegmentIndex).

Однако, если вы неЕсли вы устанавливаете значение по умолчанию (через Interface Builder или программно), вы должны проверить возвращенное целое число selectedSegmentIndex по отношению к константе UISegmentedControlNoSegment, чтобы убедиться, что вы не пытаетесь сохранить то, что фактически является «без выбора».

...