2016-08-15 2 views
17

С моим проектом я использую следующий код, чтобы сделать мои изображения в округлой форме:ИОС скор 3 xcode8 беты округляется ImageView

profileImage.layer.cornerRadius = profileImage.frame.size.width/2 
profileImage.clipsToBounds = true 

Я также использую contrains для моего образа, чтобы сделать его width = hight и другими сдерживает ,

После ugrading моего проекта Xcode 8 беты, и стремительных 3. Всех представлений изображения, которые я предлагаю, чтобы округлый исчезали, и когда я удалить код, что делает его закругленное или я удалить все Сдерживает они появляются снова ,
Но мне все еще нужно, чтобы их округлили. Любой может помочь мне решить проблему. Thanks

+0

Проверьте в отладчике, что такое val uue 'profileImage.frame.size.width'. Возможно, в то время макет не был завершен. Поэтому радиус угла может быть установлен на недопустимое значение. Вы также обновили до iOS 10 одновременно? – Codo

+0

Apple также отмечает в примечаниях к выпуску, что существуют проблемы с новым форматом файлов IB (которые в основном были исправлены в бета-версии 5). У меня постоянно возникали взгляды и ограничения, меняющие себя в моей раскадровке. – jjatie

+0

С cuurent версией xcode он работает отлично, после обновления до xcode beta 5 все изображения, которые я установил закругленными, исчезли. Я всегда убеждаюсь, что ширина = высота. Я установил это с помощью ограничений. –

ответ

26

У меня была та же проблема, решение было просто переместить строку кода перед изменениями вашего слоя. Попробуйте применить изменения макета:

self.view.layoutIfNeeded() 

перед кодом:

profileImage.layer.cornerRadius = profileImage.frame.size.width/2 
profileImage.clipsToBounds = true 

ИЛИ

разместить код, связанные с кадрами/слоев в viewDidLayoutSubviews() метод:

override func viewDidLayoutSubviews() { 

    profileImage.layer.cornerRadius = profileImage.frame.size.width/2 
    profileImage.clipsToBounds = true 

} 
+0

спасибо, что педруан. Его работа прекрасна. –

+1

Просто потратил впустую один день, пытаясь исправить эту проблему: | – tufyx

Смежные вопросы