Расширяете интерфейс Builder с категориями? - PullRequest
1 голос
/ 06 ноября 2010

Мне было интересно, можно ли продлить занятия, например, UIView или UITextView с категориями и расширение было выбрано Интерфейсным Разработчиком?

Давайте предположим, что мы хотим добавить предыдущий и следующий выход к каждому UITextView, в идеале можно было бы написать категорию для расширения UITextView и иметь Interface Builder подобрать это изменение. Следовательно, предлагая предыдущие и следующие выпуски на всех UITextViews.

Но эта попытка, похоже, провалилась. Это все еще возможно?

Ответы [ 2 ]

2 голосов
/ 06 ноября 2010

Розетки - ивары. Вы не можете добавить ivars в категорию.

Но вы можете написать подкласс UITextView (возможно, назвать его SequenceTextView или что-то в этом роде). Добавьте все желаемые магазины в качестве свойств / иваров подкласса. Затем добавьте UITextView в IB и установите его класс SequenceTextView, и ваши выходы должны появиться. Просто не забывайте всегда использовать SequenceTextView вместо UITextView, когда вам нужны эти выходы.

Дополнительная подсказка: для быстрого доступа позже перетащите SequenceTextView из окна .xib в раздел «Пользовательские объекты» панели «Библиотека IB». Это избавит вас от необходимости каждый раз вручную устанавливать идентификатор класса (и другие параметры по умолчанию).

0 голосов
/ 24 декабря 2011

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

...