Разработчик Интерфейса Apple: добавление подпредставления к UIImageView

Я создал UIImageView с помощью Интерфейсного Bulder. Теперь я хочу поместить маркировку в нем (как ее подпредставление). В коде я могу ввести что-то как: [myUIImageView addSubview:myUILabel]; Но я могу сделать это с помощью IB? Я нашел решение для UIView, но не может найти что-то подобным для UIImageView.

54
задан kpower 3 September 2010 в 23:37
поделиться

1 ответ

Вы не можете добавить подпредставление в UIImageView в построителе интерфейса по причинам, известным только Apple! Вы правы, говоря, что вы можете добавить Subview программно, но тогда накладные расходы на установку масок с автоматическим изменением размеров и размещения вложенных представлений должны быть обработаны в коде, что является громоздким.

Итак, есть простой обходной путь. Вместо того, чтобы перетаскивать экземпляр UIImageView в перо, просто перетащите UIView и измените его класс на UIImageView из UIView (опция инспектора cmd + 4).Единственное различие, которое вы найдете в пике для экземпляра imageView по умолчанию и вашего нового экземпляра подкласса UIImageView, заключается в том, что вы не можете установить изображение для своего нового imageView из пера (опция cmd + 1). Итак, в методе -viewDidLoad соответствующего viewController установите изображение для этого выхода UIImageView.

Поступая таким образом, вы можете свободно добавлять подпредставления к своим экземплярам «теперь UIImageView» в построителе интерфейса, что очень просто.

Надеюсь, это поможет. . .

112
ответ дан 7 November 2019 в 07:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: