Пару раз я хотел использовать значение из файла XIB перед созданием экземпляра класса; на ум приходят два:
- Расчет высоты для ячеек таблицы - все ячейки в таблице основаны на высоте XIB, каждая ячейка может быть расширена, если отображается дополнительная информация, но «базовая» высота должна исходить от XIB.
- UIFont и размеры - нет смысла дублировать эти значения как константы, но они часто полезны для вычисления высоты ячейки.
В обоих случаях высота ячейки должна быть рассчитана для HeightForCell до создания экземпляров XIB.
Два подхода, которые я рассмотрел:
- создание экземпляра мусора XIB только для чтения значений.
- чтение самого файла XIB, чтобы выбрать значения без создания экземпляра.
Несмотря на то, что меня раздражает необходимость дублировать свойства XIB в качестве констант, у меня не было (или не было) времени для реализации любого из этих подходов.
Кто-нибудь еще придумал жизнеспособное решение, или вы просто живете с дублированием констант? Какой из вышеперечисленных подходов вы считаете лучше (как в более безопасном)?
Спасибо.