ios - 想要将图像直接从图像选择器传输到另一个具有 uiimageview 的 View

标签 ios swift xcode uiimagepickercontroller

我有 2 个 UIViewController,其中我在第一个 UIViewController 的导航栏中有一个按钮,在下一个 Controller 中我有 1 个 UIImageView 1 个 UITextField 和 1 个 UITextView。所以当我点击第一个 View Controller 上的按钮时,图像选择器应该打开,当我选择任何图像时它应该直接传递到下一个 View Controller UIImageView。因为我是 iOS 的新手,不知道该怎么做

我的 Storyboard图片: storyboard image

我的第一个 View Controller 即 homeviewcontroller.swift 代码:

import UIKit
import GoogleMaps

class HomeViewController: UIViewController, UINavigationControllerDelegate, UIImagePickerControllerDelegate{

    @IBOutlet weak var mapView: GMSMapView!

    var zoom: Float = 15

    override func viewDidLoad() {
        super.viewDidLoad()

        let camera = GMSCameraPosition.camera(withLatitude: 21.2306, longitude: 72.8671, zoom: 6.0)
        mapView.camera = camera
        mapView.isMyLocationEnabled = true
        mapView.settings.myLocationButton = true
        showMarker(position: camera.target)


    }

    func showMarker(position: CLLocationCoordinate2D) {
        let marker = GMSMarker()
        marker.position = position
        marker.isDraggable = true
        marker.title = "GREWON TECHNOLOGIES PVT. LTD."
        marker.snippet = "SURAT, GUJARAT"
//        marker.appearAnimation = GMSMarkerAnimation.pop
        marker.map = mapView
    }

    @IBAction func imgPickerBtn(_ sender: Any) {
        let picker = UIImagePickerController()
        picker.delegate = self
        picker.allowsEditing = true
        picker.sourceType = .photoLibrary
        self.present(picker, animated: true, completion: nil)

    }

    func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {

        if let pickedImage = info[UIImagePickerControllerOriginalImage] as? UIImage {

        }
    }


    @IBAction func ZoomInBtn(_ sender: Any) {
        zoom = zoom + 1
        self.mapView.animate(toZoom: zoom)
    }

    @IBAction func zoomOutBtn(_ sender: Any) {
        zoom = zoom - 1
        self.mapView.animate(toZoom: zoom)
    }

}

extension HomeViewController:GMSMapViewDelegate {

    func mapView(_ mapView: GMSMapView, didTapAt coordinate: CLLocationCoordinate2D) {
//        self.showMarker(position: coordinate)
    }

}

我的第二 View 即 detailviewcontroller.swift

import UIKit

class DetailsViewController: UIViewController {

    var transferedImage:UIImage!

    override func viewDidLoad() {
        super.viewDidLoad()

        // Do any additional setup after loading the view.
    }

最佳答案

请引用以下代码:

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
    if let pickedImage = info[UIImagePickerControllerOriginalImage] as? UIImage {
        let objDetailsViewController = UIStoryboard(name: "storyboardName", bundle: nil).instantiateViewController(withIdentifier: "DetailsViewController_StoryboardID") as! DetailsViewController
        objDetailsViewController.transferedImage = pickedImage
        self.navigationController?.pushViewController(objDetailsViewController, animated: true)
    }
}

class DetailsViewController: UIViewController {
    var transferedImage:UIImage!
    @IBOutlet weak var imageView:UIImageView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        //Set your selected image
        imageView.image = transferedImage
}

关于ios - 想要将图像直接从图像选择器传输到另一个具有 uiimageview 的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55762015/

相关文章:

mysql - 从 iOS 设备通过 POST 方法将数据插入远程 mysql 数据库

iPad autoresizingMask 创建底边距

ios - 为什么 CGPath 包含测试有时会在路径外的点上返回 true?

ios - 具有所需初始化方法的 Swift 类型删除协议(protocol)

xcode - 如何在 Xcode 4 的运行脚本构建阶段中使用 sudo?

c++ - SDL 图像渲染困难

ios - 最新的 iOS 版本分布百分比?

ios - 在 vuforia 示例中的 cloudReco 中添加按钮

swift - 无法在 Playground 上显示 View

iphone - 查看 SQLite3 数据库 (XCODE)