2017-01-08 2 views
0

message Недвижимость занимает весь экран. приложение позволяет делать снимок. после снятия фото img становится не nil и добавьте изображение в UIImageView.проблема с повторной загрузкой после изменения размера его рамки

, а затем изменив размер кадра message и добавив UIImageView для просмотра контроллера.

UIImageView может быть добавлен успешно, как я и ожидал. Но размер кадра message не изменяется.

Если я не добавляю этот UIImageView, тогда я могу изменить размер рамки message.

Как исправить эту проблему?

Я попытался поставить этот код в viewWillAppear и viewDidAppear, код все еще не работает.

спасибо.

@IBOutlet weak var message: UITextView! 
    var img: UIImage? { 
     didSet { 
      if img != nil { 
       let imageview = UIImageView(image: img) 
       let height = UIScreen.main.bounds.height * 0.4 
       let y = UIScreen.main.bounds.height - height 
       imageview.frame = CGRect(x: 0, y: y, width: UIScreen.main.bounds.width, height: height) 
       message.frame = CGRect(x: message.frame.origin.x, y: message.frame.origin.y, width: message.frame.width, height: message.frame.height - height) 
       self.view.addSubview(imageview) 
      } 
     } 
    } 
+0

Вы используете автозапуск? – Lion

+0

Да. Я действительно использовал. Но если я не добавлю subview. Я могу изменить размер представления сообщений. Например, я могу сделать кнопку, чтобы изменить размер представления сообщения. Но если я добавлю, я не могу изменить размер представления сообщения. –

ответ

0

Если вы используете autolayout, чем вы должны принять выход вашего ограничения высоты вашего сообщения TextView и вы должны уменьшить его постоянная по высоте вместо сброса это кадр, потому что кадр не будет влиять, когда у вас есть набор ограничения! Если вы не установили ограничение по высоте, тогда выведите ограничение нижнего ограничения вашего текстового вида и измените константу с размером высоты вместо нуля! Вы можете перетащить с ограничения на свой класс, чтобы выйти!

+0

Извините, я не понимаю. И я могу изменить высоту текстового сообщения сообщения, если я не добавлю subview. Пример: добавьте этот код в viewdidappear: message.frame = CGRect (x: message.frame.origin.x, y: message.frame.origin.y, width: message.frame.width, height: message.frame.height - высота) без добавления subview. Текст сообщения будет изменен. –

+0

спасибо. вы сражаетесь. но так трудно найти решение. но я нашел в своей новой книге. используя эту строку message.bottomAnchor.constraint (equalTo: imageview.topAnchor) .isActive = true –

+0

Добро пожаловать – Lion

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