Есть ли лучший способ организовать мой Plist - PullRequest
0 голосов
/ 19 марта 2011

Я создаю приложение для iPhone.

Представление таблицы имеет 3 вида: (1) мышцы -> (2) упражнения (для этой мышцы) -> (3) детали упражнения

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

Вот пара фотографий моего .plist.У меня есть два рисунка, поэтому вы можете видеть, что тег имени для мышцы все еще находится в том же списке (сразу после дочерних элементов).

http://www.box.net/shared/static/4i3yyjg0iq.png

http://www.box.net/shared/static/b1kkep55vd.png

Спасибо!

Редактировать:

Вот список из текста редактирования.(извините по какой-то причине, я не могу установить правильный интервал для сообщения).

<array> <dict>
    <key>ItemChild</key>
    <array>
        <dict>
            <key>name</key>
            <string>Ab Roller</string>
        </dict>
        <dict>
            <key>name</key>
            <string>Ab Crunch Machine</string>
        </dict>
        <dict>
            <key>name</key>
            <string>Advanced Kettlebell Windmill</string>
        </dict>
         </array>
    <key>name</key>
    <string>Abdominals</string>
</dict>


</array>
    <key>name</key>
    <string>Abdominals</string>
</dict>

1 Ответ

0 голосов
/ 19 марта 2011

Ваш .plist - это просто копия на диске информации, которая должна храниться в памяти при запуске вашей программы.Если вы можете получить информацию, и ваш код работает, то беспокоиться о форматировании файла .plist для меня не имеет большого смысла.Все, что работает, работает, в данном случае.

Обновление: Хорошо, я думаю, что вы действительно можете сделать это как более кратким, так и более значимым.Вот мои мысли.

Базовым контейнером информации является массив.Каждый элемент в массиве является словарем.Пары ключ / объект в словаре - это имя мышцы и массив упражнений.Каждый элемент в массиве упражнений представляет собой другой словарь, пары ключей / объектов которого являются названием упражнения и независимо от того, что вы решили использовать для детализации.Конечный результат будет выглядеть следующим образом:

<array>
  <dict>
    <key>muscleName</key>
    <string>Abdominals</string>
    <key>exercises</key>
    <array>
      <dict>
        <key>exerciseName</key>
        <string>Ab Roller</string>
        <key>exerciseDetail</key>
        <string></string> <!-- or possibly data -->
      </dict>
      <dict>
        <key>exerciseName</key>
        <string>Ab Crunch Machine</string>
        <key>exerciseDetail</key>
        <string></string>
      </dict>
      <dict>
        <key>exerciseName</key>
        <string>Advanced Kettlebell Windmill</string>
        <key>exerciseDetail</key>
        <string></string>
      </dict>
      <!-- more exercises? -->
    </array>
    <!-- End Abdominals -->
  </dict>
  <dict>
    <key>muscleName</key>
    <string>AnotherMuscle</string>
    <key>exercises</key>
    <array>
      <!-- dicts of the exercises for this muscle -->
    </array>
    <!-- End AnotherMuscle -->
  </dict>
  <!-- more muscles -->
</array>

Я думаю, это облегчит создание вашего .plist и сделает кодирование более простым и читаемым, когда вы дойдете до этого этапа.

Если у вас есть огромное количество информации (и звучит так, как вы), вы можете также разделить ее на три (или более) файла: имена мышц, упражнения, подробности упражнения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...