Я искал много ресурсов, но пока безрезультатно.
Я могу успешно увеличивать / уменьшать и перемещать влево, вправо, вверх и вниз, проводя в UIImageView под ScrollView.
Как добиться того же с помощью кнопок?Я мог бы увеличить и уменьшить масштаб с помощью этого кода:
@IBAction func zoomIn(_ sender: UIBarButtonItem) {
imageScrollView.maximumZoomScale = 6.0
if imageScrollView.zoomScale < imageScrollView.maximumZoomScale {
imageScrollView.zoomScale = imageScrollView.zoomScale + 0.1
}
}
@IBAction func zoomOut(_ sender: UIBarButtonItem) {
imageScrollView.minimumZoomScale = 1
if imageScrollView.zoomScale > imageScrollView.minimumZoomScale {
imageScrollView.zoomScale = imageScrollView.zoomScale - 0.1
}
}
И вот код, который я использую:
@IBOutlet weak var imageScrollView: UIScrollView!
@IBOutlet weak var imageView: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
imageScrollView.contentSize = self.imageView.frame.size
imageScrollView.delegate = self
}
override func viewWillLayoutSubviews() {
super.viewWillLayoutSubviews()
updateMinZoomScaleForSize(view.bounds.size)
}
// MARK: - Calculation of zoom scale for imageScrollView
fileprivate func updateMinZoomScaleForSize(_ size: CGSize) {
let widthScale = size.width / imageView.bounds.width
let heightScale = size.height / imageView.bounds.height
let minScale = min(widthScale, heightScale)
imageScrollView.minimumZoomScale = minScale
imageScrollView.zoomScale = minScale
}
Мне нужно добавить еще 4 кнопки вФорма стрелок для перемещения влево, вправо, вверх и вниз.Цель всего этого состоит в том, что я хочу одновременно рисовать и увеличивать UIImageView, и это вызывает конфликты.