我正在尝试将此 UI ImageView 从一个 View Controller 传递到同一 Storyboard上的另一个 View Controller 。我已经将 UI TextField 传递给 UI Label 和 UI Button。现在我需要使用 UI ImageView 来完成。
这是我的两个 View Controller 。
import UIKit
class PhotoShareViewController: UIViewController {
@IBOutlet weak var imageView: UIImageView!
@IBOutlet weak var contentTextView: UITextView!
@IBOutlet weak var thatTextField: UITextField!
@IBOutlet weak var thisTextField: UITextField!
var presenter: PhotoShareModuleInterface!
var image: UIImage!
@IBAction func thisUploadPhoto(_ sender: Any) {
if thisTextField.text != "" && thatTextField.text != ""
{
performSegue(withIdentifier: "segue", sender: nil)
}
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
var photoShareLabelViewController = segue.destination as! PhotoShareLabelViewController
photoShareLabelViewController.thisString = thisTextField.text!
photoShareLabelViewController.thatString = thatTextField.text!
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
imageView.image = image
}
override var prefersStatusBarHidden: Bool {
return true
}
@IBAction func didTapCancel(_ sender: AnyObject) {
presenter.cancel()
presenter.pop()
}
/* @IBAction func didTapDone(_ sender: AnyObject) {
guard let message = thatTextField.text, !message.isEmpty else {
return
}
guard let messageOne = thisTextField.text, !messageOne.isEmpty else {
return
}
presenter.finish(with: image, content:message)
presenter.dismiss()
}
}
*/
}
extension PhotoShareViewController: PhotoShareViewInterface {
var controller: UIViewController? {
return self
}
}
如果有人能告诉我如何将图像从一个 View Controller 发送到另一个 View Controller ,那就太棒了!
最佳答案
您没有显示 PhotoShareLabelViewController
,但大概它有:
var thisString: String?
添加
var thisImage: UIImage?
然后像thisString
一样传递它
photoShareLabelViewController.thisImage = imageView.image
然后在 PhotoShareLabelViewController
的 viewDidLoad
中获取它(这可能是您获取 thisString
的地方)。像这样的东西:
self.imageView.image = self.thisImage
但是,使用您正在使用的任何变量名称。
简而言之,只需复制您对 thisString
所做的操作,但使用 UIImage
作为类型而不是 String
。
注意:您不会将 UIImageView 从一个 VC 传递到另一个 VC(这是不可能的)。您正在将图像从一个 VC 的 imageview 传递到另一个 VC。
关于ios - 如何将 UI ImageView 从一个 View Controller 传递到另一个? swift 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45576389/