UIImageView исчезает при включении «ClipToBounds»

#ios #iphone #swift #cocoa-touch

#iOS #iPhone #swift #cocoa-touch

Вопрос:

У меня есть UIImageView элемент, который я добавил через Interface Builder ( XIB файл).

Я создаю IBOutlet к этому ImageView и по awakeFromNib() методу добавляю эти 2 строки (для создания кругового ImageView):

 self.myImageView.layer.cornerRadius = self.myImageView.frame.size.width / 2
self.myImageView.clipsToBounds = true
  

Ограничения для этого UIImageView (через Interface Builder , NameLabel является UIlabel с фреймом: x: 27, y: 170, width: 319, height: 25 ) являются:

  • Ширина = 77
  • Верхний пробел SuperView = 88
  • Нижний пробел NameLabel = 5
  • Выровнять по центру X = NameLabel

Когда я запускаю приложение, я не вижу ImageView — он просто исчезает!

Примечание: (Я думаю, это происходило каждый раз, когда ограничение устанавливало свою высоту).

Примечание 2: когда я удаляю self.myImageView.clipsToBounds = true строку или self.myImageView.layer.cornerRadius = self.myImageView.frame.size.width / 2 строку, это работает!

Есть идеи, как это исправить?

Спасибо!

Комментарии:

1. Как вы добавили imageview ..?

2. @vaibhav Как я писал выше, используя Interface Builder ( XIB file)

3. Хорошо, покажите больше кода и скриншотов.

4. @vaibhav Какой код? добавленные 2 строки являются единственным релевантным кодом, вероятно, это проблема между этими строками и ограничениями

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