[英]Can't feed imageView from a selected image in a tableView or collectionView into a detailView
我要从一个collection或tableView中选择,无论选择哪种,它都不会出现在detail控制器中。
这些是我得到的错误:
这是detailViewController中的代码:
var meme = SentMemeImageView.self
@IBOutlet weak var sentMemesBtn: UIBarButtonItem!
@IBOutlet weak var editBtn: UIBarButtonItem!
@IBOutlet weak var sentMemeView: UIImageView!
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
displayMeme(meme)
}
override func viewDidLoad() {
super.viewDidLoad()
}
func displayMeme(_ meme: SentMemeImageView) {
sentMemeView.image = meme.memedImage
}
@IBAction func launchMemeEditorViewController(_ sender: Any) {
_ = navigationController?.popViewController(animated: true)
}
//unwinding to the view before (the collectionView, or the tableView)
@IBAction func unwindVC(for unwindSegue: UIStoryboardSegue, towardsViewController subsequentVC: UIViewController) {
self.dismiss(animated: true, completion: nil)
}
}
我需要调用memedImage
,但是从结构MemeImage
我无法仅调用memedImage
所以我仅memedImage
了一个结构,但是在没有弹出这些错误的情况下,我无法将其调用到详细信息视图控制器。
struct MemeImage {
let topText: String
let bottomText: String
let originalImage: UIImage
let memedImage: UIImage
}
struct SentMemeImageView {
let memedImage: UIImage
}
谢谢。
更新:AppDelegate
import UIKit
import CoreData
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
var memes = [MemeImage]()
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
return true
}
在prepareForSegue
的TableViewController中,您需要告诉它要传递到detailViewController的数据。
var myData: [NSManagedObject] = []
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
let selectedIndexPath:NSIndexPath = self.tableView.indexPathForSelectedRow!
let vc = segue.destinationViewController as! detailViewController
vc. meme = myData[selectedIndexPath.row]
}
然后在详细信息viewDetailViewController中。
@IBOutlet weak var memeView: UIImageView!
var meme: NSManagedObject? // You will use this for the index when pulling the image from how ever you are storing it.
// The memeImage will need to be set from how ever you are storing the image.
self.memeView.image = UIIamge(named: meme)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.