2016-08-23 4 views

ответ

0

вы можете попробовать следующее (я не запустить его еще, уверен, что он работает ..)

let imagePickerView: UIView = self.imagePicker.view 
let cameraViewFrame: CGRect = CGRectMake(0, self.overlay.topBarHeight, 
           self.view.bounds.size.width, 
           self.view.bounds.size.height -self.overlay.topBarHeight - self.overlay.bottomBarHeight); 
imagePickerView.frame = cameraViewFrame 

Удачи :)

0

Что мы можем сделать, это нарисовать новый UIImage вместо. Код ниже - это функция масштабирования пройденного изображения. И после того, как изображение было масштабировано, размер изменяется.

extension UIImage { 
    class func scaleImage(image:UIImage, scaleFloat:CGFloat) -> UIImage{ 
      let size = CGSizeMake(image.size.width * scaleFloat, image.size.height * scaleFloat) 
      UIGraphicsBeginImageContext(size) 
      let context = UIGraphicsGetCurrentContext() 
      var transform = CGAffineTransformIdentity 
      transform = CGAffineTransformScale(transform, scaleFloat, scaleFloat) 
      CGContextConcatCTM(context, transform) 
      image.drawAtPoint(CGPointMake(0, 0)) 
      let newimg = UIGraphicsGetImageFromCurrentImageContext() 
      UIGraphicsEndImageContext() 
      return newimg 
     } 
} 

Вот пример кода для масштабирования изображения до 150x150. Но эти коды помогают только квадратному изображению. Если это не квадрат, вы можете проверить, что произойдет.

extension UIImage { 
    class func scaleImgTo150x150(image:UIImage) -> UIImage{ 
      let scale:CGFloat 
      if image.size.width > image.size.height{ 
       scale = 150/image.size.width 
      } 
      else{ 
       scale = 150/image.size.height 
      } 
      return UIImage.scaleImage(image, scaleFloat: scale) 
     } 
} 

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

  • Нет связанных вопросов^_^