UIView с кнопками UIB не отображаются до щелчка или поворота - PullRequest
1 голос
/ 24 января 2012

Я бился головой с этим вопросом последние два дня.Много гуглил, но пока не смог найти ответ, поэтому решил обратиться за помощью сюда.Посмотрим, удастся ли мне.

Я кодирую многократно используемый элемент управления, состоящий из UIView с переменным числом настроенных UIButtons.Я реализовал initWithFrame :, initWithCoder: и drawRect: где кнопки (которые создаются до рисования) фактически добавляются в представление.Все делается программно, так как при использовании элемента управления должно предоставляться содержимое UIButton, поэтому для этого UIView.

этот UIView не будет. Этот 1012 *, назовем его CustomizableBarButton, затем используется вUIViewController, давайте назовем это MyTestViewController с учетом этого, назовем это customizableBarButtonView.GUI

MyTestViewController был установлен на IB, где UIView был привязан к customizableBarButtonView (класс соответствовал соответственно).

MyTestViewController - довольно стандартныйкласс, за исключением viewWillAppear: инициализирует кнопки и передает их в CustomizableBarButton вместе с некоторыми другими параметрами.

Проблема в том, что все работает отлично ... за исключением первого раза!

Я имею в виду, когда я запускаю приложение на симуляторе (я еще не пробовал его на iPhone, но я твердо верю, что это не проблема с оборудованием), MyTestViewController показывает фон customizableBarButtonView, ноне кнопки.Теперь при нажатии на место, где должна быть кнопка, все кнопки внезапно появляются!

Я озадачен, поскольку CustomizablebarButton drawRect: запускается до странного эффекта "click n'appear", и кнопки фактически добавляются в подпредставление.

Еще один намек на то, что моя помощь:если вы не нажимаете на кнопки (так что у вас еще нет кнопок), но поворачиваете устройство, они также будут выглядеть как по волшебству!

Возможно, это что-то очень простое, но я скучаю по нему иЯ схожу с ума ...

Кто-нибудь может помочь, пожалуйста?

Заранее спасибо!

1 Ответ

0 голосов
/ 24 января 2012

Вы сказали, что добавляете кнопки в drawRect:.Не делай этого.Вам нужно добавить кнопки в ваши методы инициализации.

...