В интересах СУХОГО в разработке под iOS - Где я могу поместить функцию, чтобы установить градиент для нескольких представлений?
Это вопрос организации кода. У меня есть код, который поместит градиентный фон в представление. Я хочу использовать один и тот же код для нескольких представлений - поэтому я хочу поместить код в функцию и вызывать его при настройке рассматриваемых представлений.
Мой вопрос, где находится правильное место, чтобы поставить такую функцию? Я очень новичок в разработке для iOS, и я хотел бы начать делать все максимально чисто и правильно.
3 ответа
Как упоминалось ранее, категории могут быть лучшей идеей, когда дело доходит до высушивания вашего кода.
Помните, что, просто для соглашения, категории в Objective-C - это имя класса, для которого вы пишете категорию + типы добавления.
Например, вы можете назвать ваши файлы категории:
UIView + Gradient.h UIView + Gradient.m
Тогда вы можете вызвать его, когда захотите, в любом подклассе, если UIView:D
Я полагаю, что в Xcode 4.3 есть шаблон для этого (для категорий, который я имею в виду), так что давайте попробуем.
Помните, что вам нужно написать новое имя метода, в противном случае вы бы перезаписали существующий метод UIView, а это не то, что вам нужно в этом случае.
Приветствую вас и поздравляю с вашими усилиями, чтобы выучить правильные привычки кодирования с самого начала:) Слава вам!
Возможно, метод категории на UIView, как
-drawGradientIn: (CGRect)aRect;
Вы могли бы поместить это в функцию, я полагаю, или, возможно, категория могла бы работать лучше.