Ios 如何在Swift中按图像大小调整UIImageView的大小
我想使用缩放增加图像。我做了这个,做了那个,会等于图片的字体大小,但我还是用上面的背景像这样改变吗?我怎样才能做到 viewDidLoad中的My imageViewIos 如何在Swift中按图像大小调整UIImageView的大小,ios,swift,uiimageview,swift2,Ios,Swift,Uiimageview,Swift2,我想使用缩放增加图像。我做了这个,做了那个,会等于图片的字体大小,但我还是用上面的背景像这样改变吗?我怎样才能做到 viewDidLoad中的My imageView imageView = UIImageView(frame: CGRect(x: 0, y: 0, width: self.view.frame.width, height: self.view.frame.height)) imageView.backgroundColor = .greenColor()
imageView = UIImageView(frame: CGRect(x: 0, y: 0, width: self.view.frame.width, height: self.view.frame.height))
imageView.backgroundColor = .greenColor()
imageView.image = UIImage(contentsOfFile: document.documentImageURL)
imageView.autoresizingMask = [.FlexibleWidth, .FlexibleHeight] //
func setZoomScale() {
let widthRatio = imageView.bounds.size.width / (imageView.image?.size.width)!
let heightRatio = imageView.bounds.size.height / (imageView.image?.size.height)!
let scale = min(widthRatio, heightRatio)
let imageWidth = scale * (imageView.image?.size.width)!
let imageHeight = scale * (imageView.image?.size.height)!
imageView.frame = CGRect(x: 0, y: 0, width: imageWidth, height: imageHeight)
}
我就是这样做的
override func viewDidLoad() {
super.viewDidLoad()
let image = UIImage(contentsOfFile: document.documentImageURL)
imageView = UIImageView(image: image)
imageView.autoresizingMask = [.FlexibleWidth, .FlexibleHeight]
scrollView = UIScrollView(frame: view.bounds)
scrollView.delegate = self
scrollView.backgroundColor = UIColor(red: 129/255.0, green: 130/255.0, blue: 130/255.0, alpha: 1.0)
scrollView.autoresizingMask = [.FlexibleWidth, .FlexibleHeight]
scrollView.showsHorizontalScrollIndicator = false
scrollView.showsVerticalScrollIndicator = false
scrollView.addSubview(imageView)
view.addSubview(scrollView)
newZoomScale()
scrollView.setZoomScale(scrollView.minimumZoomScale, animated: false)
setGesture()
setNavigationBar()
}
private func newZoomScale() {
let imageViewSize = imageView.bounds.size
let scrollViewSize = scrollView.bounds.size
let widthScale = scrollViewSize.width / imageViewSize.width
let heightScale = scrollViewSize.height / imageViewSize.height
scrollView.minimumZoomScale = min(widthScale, heightScale)
scrollView.zoomScale = 1.0
}
func scrollViewDidZoom(scrollView: UIScrollView) {
let imageViewSize = imageView.frame.size
let scrollViewSize = scrollView.bounds.size
let verticalPadding = imageViewSize.height < scrollViewSize.height ? (scrollViewSize.height - imageViewSize.height) / 2 : 0
let horizontalPadding = imageViewSize.width < scrollViewSize.width ? (scrollViewSize.width - imageViewSize.width) / 2 : 0
self.scrollView.contentInset = UIEdgeInsets(top: verticalPadding, left: horizontalPadding, bottom: verticalPadding, right: horizontalPadding)
}
override func viewDidLoad(){
super.viewDidLoad()
让image=UIImage(contentsOfFile:document.documentImageURL)
imageView=UIImageView(图像:图像)
imageView.autoresizingMask=[.FlexibleWidth、.FlexibleHeight]
scrollView=UIScrollView(框架:view.bounds)
scrollView.delegate=self
scrollView.backgroundColor=UIColor(红色:129/255.0,绿色:130/255.0,蓝色:130/255.0,alpha:1.0)
scrollView.autoresizingMask=[.FlexibleWidth、.FlexibleHeight]
scrollView.showsHorizontalScrollIndicator=false
scrollView.showsVerticalScrollIndicator=false
scrollView.addSubview(imageView)
view.addSubview(滚动视图)
newzoomsale()
scrollView.setZoomScale(scrollView.minimumZoomScale,动画:false)
设置手势()
setNavigationBar()
}
私有func newzoomsale(){
让imageViewSize=imageView.bounds.size
让scrollViewSize=scrollView.bounds.size
让widthScale=scrollViewSize.width/imageViewSize.width
设heightScale=scrollViewSize.height/imageViewSize.height
scrollView.minimumZoomScale=min(宽度刻度、高度刻度)
scrollView.zoomScale=1.0
}
func scrollViewDidZoom(scrollView:UIScrollView){
让imageViewSize=imageView.frame.size
让scrollViewSize=scrollView.bounds.size
让verticalPadding=imageViewSize.height