В интересах СУХОГО в разработке под iOS - Где я могу поместить функцию, чтобы установить градиент для нескольких представлений?

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

Мой вопрос, где находится правильное место, чтобы поставить такую ​​функцию? Я очень новичок в разработке для iOS, и я хотел бы начать делать все максимально чисто и правильно.

3 ответа

Решение

Как упоминалось ранее, категории могут быть лучшей идеей, когда дело доходит до высушивания вашего кода.

Помните, что, просто для соглашения, категории в Objective-C - это имя класса, для которого вы пишете категорию + типы добавления.

Например, вы можете назвать ваши файлы категории:

UIView + Gradient.h UIView + Gradient.m

Тогда вы можете вызвать его, когда захотите, в любом подклассе, если UIView:D

Я полагаю, что в Xcode 4.3 есть шаблон для этого (для категорий, который я имею в виду), так что давайте попробуем.

Помните, что вам нужно написать новое имя метода, в противном случае вы бы перезаписали существующий метод UIView, а это не то, что вам нужно в этом случае.

Приветствую вас и поздравляю с вашими усилиями, чтобы выучить правильные привычки кодирования с самого начала:) Слава вам!

Возможно, метод категории на UIView, как

-drawGradientIn: (CGRect)aRect;

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

Другие вопросы по тегам