У меня есть ситуация, когда мне кажется, что мне нужно добавить переменные экземпляра в категорию, но я знаю из документов Apple, что я не могу этого сделать. Поэтому мне интересно, какая лучшая альтернатива или обходной путь.
Что я хочу сделать, так это добавить категорию, которая добавит функции UIViewControllers. Я бы счел это полезным во всех моих разных UIViewControllers, независимо от того, какой конкретный подкласс UIViewController они расширяют, поэтому я считаю, что категория является лучшим решением. Чтобы реализовать эту функциональность, мне нужно несколько разных методов, и мне нужно отслеживать данные между ними, так что это заставило меня хотеть создавать методы экземпляра.
В случае, если это полезно, вот то, что я специально хочу сделать. Я хочу, чтобы было легче отслеживать, когда клавиатура программного обеспечения скрывает и показывает, так что я могу изменить размер содержимого в моем представлении. Я нашел, что единственный способ сделать это надежно - поставить код в четыре разных метода UIViewController и отслеживать дополнительные данные в переменных экземпляра. Поэтому эти методы и переменные экземпляра - это то, что я хотел бы поместить в категорию, поэтому мне не нужно копировать их каждый раз, когда мне нужно обрабатывать программную клавиатуру. (Если есть более простое решение для этой точной проблемы, это тоже хорошо, но мне все же хотелось бы узнать ответ на переменные экземпляра категории для дальнейшего использования!)