Я бился головой с этим вопросом последние два дня.Много гуглил, но пока не смог найти ответ, поэтому решил обратиться за помощью сюда.Посмотрим, удастся ли мне.
Я кодирую многократно используемый элемент управления, состоящий из 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", и кнопки фактически добавляются в подпредставление.
Еще один намек на то, что моя помощь:если вы не нажимаете на кнопки (так что у вас еще нет кнопок), но поворачиваете устройство, они также будут выглядеть как по волшебству!
Возможно, это что-то очень простое, но я скучаю по нему иЯ схожу с ума ...
Кто-нибудь может помочь, пожалуйста?
Заранее спасибо!