【发布时间】:2019-03-04 16:59:22
【问题描述】:
还有许多其他主题将数据传递到另一个 ViewController - 我知道 - 但我找不到将数据从 UITableViewCell 传递到 UIViewController 的解决方案。这个问题与其他问题不同,在这里我必须访问另一类 UITableViewCell 中的 ImageView。 Segues,为 segues 做准备,其他主题已在其他帖子中充分讨论,但不是这个特殊的星座。
我有一个类 UITableViewCell:
class PostCell: UITableViewCell {
...
// networkService is downloading an image
networkService.downloadImage({ (imageData) in
let image = UIImage(data: imageData as Data)
...
// image is set to UIImageView
self.postImageView.image = image
在我的 ViewController 中,我这样做是为了转到 DetailViewController:
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
aktIndex = indexPath.section
performSegue(withIdentifier: "segueDetail", sender: self)
}
我试过这个:
let MainStory:UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let desVC = MainStory.instantiateViewController(withIdentifier: "DetailViewController") as! DetailViewController
desVC.getImage = ???
self.navigationController?.pushViewController(desVC, animated: true)
DetailViewController:
class DetailViewController: UIViewController {
var getImage = UIImage()
...
我在 xcode 中做了一个 segue (segueDetail):
目前我将图像数据存储在 UserDefaults 中并在 DetailViewController 中再次读取它们。很奇怪,我知道。
我必须从哪里传递数据?在我的 PostCell 中还是在 ViewController 中?问题是从我的 ViewController 中的 PostCell 访问图像数据。
【问题讨论】:
标签: xcode uitableview segue swift4.2