Словарь строковой переменной
Мы пытаемся присвоить словарь строковой переменной.
Попытка присвоить словарь полю text не сработает. Наш предыдущий массив был массивом строк, поэтому код работал нормально. Новая версия использует массив словарей, поэтому мы должны разобраться, как получить из словаря название коктейля (строку) и присвоить его свойству text. Если еще раз взглянуть на содержимое DrinksDirections.plist, вы увидите, что мы используем массив словарей — по одному для каждого коктейля. Как было сказано ранее, в словарях данные хранятся в виде пар «ключ-значение». Чтобы получить значение, вы просто посылаете словарю сообщение objectForKey:@"key".
Обновление кода для работы со списком plist словарей.
Информацию о структуре словаря можно применить и для заполнения детализированного представления. Если передать контроллеру детализированного представления словарь нужного коктейля, он может заполнить поля представления перед его отображением.
Внесите в приложение следующие изменения. После этого приложение будет знать, что вы используете массив словарей, а не массив строк. А детализированное представление получит ссылку на отображаемую информацию о коктейле.
Изменение текста ячейки табличного представления.
В файле RootViewController.m свойству textLabel.text ячейки должно присваиваться значение имени из соответствующего словаря.
Включение ссылки на словарь с информацией о коктейле в детализированное представление.
Включите в файл DrinkDetailViewController.h переменную экземпляра типа NSDictionary с именем drink_ and и соответствующее объявление свойства.
Реализация ссылки на словарь в файле DrinkDetailViewController.m.
Включите директиву @synthesize и вызов dealloc для новой ссылки на словарь.
Итак, мы объяснили приложению DrinkMixer, как работать со словарями. Постройте и запустите приложение; проследите за тем, чтобы точки прерывания были отключены!
Приложение снова работает! Теперь, когда сбой устранен, пора заполнить детализированное представление подробной информацией о коктейлях.
Детализированному представлению нужны данные.
Разобравшись со словарями, мы переходим к загрузке подробных описаний коктейлей. Однако извлечение описаний из массива словарей для передачи источнику данных потребует дополнительного шага.
- Дата: 16-12-2014, 16:53