Установите значение для дочерней панели - PullRequest
0 голосов
/ 04 июля 2011

Используя inAppSettingsKit, я пытаюсь отобразить значение элемента дочерней панели в итоговой таблице tableCell.

TableCell правильно отображает заголовок, но не значение: /

Вот фрагмент моего файла Root.plist:

<dict>
    <key>IASKViewControllerClass</key>
    <string>SetupBirthViewController</string>
    <key>IASKViewControllerSelector</key>
    <string>init</string>
    <key>Key</key>
    <string>settings_birthYear</string>
    <key>Title</key>
    <string>Né(e) en</string>
    <key>Type</key>
    <string>PSChildPaneSpecifier</string>
</dict>

И мой файл [NSUserDefaults standardUserDefaults] выглядит так:

<dict>
    <key>settings_birthYear</key>
    <string>2009</string>
    <key>enable_preference</key>
    <true/>
</dict>

Я также отображаю ячейку Multi Value, и она работает как шарм ...

Кто-нибудь мне поможет?

Спасибо.

Ответы [ 2 ]

1 голос
/ 22 октября 2011

Спасибо Ортвину за ваш ответ. Поскольку не все дочерние панели должны отображать значение, я изменил код на:

      if ( key ) {
        cell.detailTextLabel.text = [self.settingsStore objectForKey:key];
      }

Я не думаю, что нам нужен еще один ключ, так как он все равно ранее не использовался для дочерних панелей. Будет отличным дополнением к официальной версии.

1 голос
/ 05 июля 2011

Детские панели на самом деле не предназначены для этого в соответствии со спецификацией Apple. Тем не менее, было бы безусловно возможно добавить поддержку для этого. Посмотрите на строку 500 в IASKAppSettingsViewController.m и установите для cell.detailTextLabel.text значение [self.settingsStore objectForKey:key] или значение по умолчанию.

Если вы сделаете лишнюю милю и завернете это в милую небольшую дополнительную опцию, мы будем рады включить ваш вклад;)

...