为什么 viewcontroller segue 中的 sender 工作而不是 collection view cell segue

P. Kwong

我有一个 ViewController,它是一个 CollectionViewDelegate。当用户点击图像时,我想在我的 CollectionView 中切换到图像的详细视图。我将 segue 从我的单元连接到详细信息 VC 并使用了此代码。

override func prepare(for segue: UIStoryboardSegue, sender: Any?) { 
    //segue to detail view of image
    if segue.identifier == "ShowDetail",
       let detailImageView = segue.destination as? CollectionDetailViewController
    {
        detailImageView.imageName = sender as! UIImage
    }
}

显示的错误是“无法将发件人 CollectionView 转换为 UIImage”。相反,当我通过我的 VC 连接时,我能够将发送者转换为 UIImage。这是为什么?

唐麦格

我不知道它在你没有显示的代码中是什么或为什么工作......但在这种情况下,如果sender是一个单元格,你不能简单地声明“现在你是一个 UIImage”,因此它是这样。

我假设您UIImageView的 Collection View Cell 中有一个,因此更有可能的是,您想要执行以下操作:

if let cell = sender as? MyCustomCell {
    if let image = cell.theImageView.image as? UIImage {
        detailImageView.imageName = image
    }
}

注意:我只是输入这个,而不是运行它,所以它可能需要一两个调整。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从Segue Stack中删除ViewController

来自分类Dev

Segue没有在viewController中执行

来自分类Dev

ViewController Segue Xamarin

来自分类Dev

ViewController Segue和登录

来自分类Dev

使用Sender为Swift中的Segue做准备

来自分类Dev

从Table View Cell Xib进行Segue,并在情节提要中显示指示器

来自分类Dev

在XCode中以编程方式执行segue后,空白ViewController

来自分类Dev

segue之后,重用的ViewController中的搜索栏无响应

来自分类Dev

IOS开发中的Segue是什么?

来自分类Dev

单击后从 Cell 中推送 segue 不起作用

来自分类Dev

Swift iOS:从ViewController中的实例执行Segue到另一个ViewController

来自分类Dev

通过tableview中的按钮进行segue执行2次segue,而不是1次

来自分类Dev

在Swift中滑动Segue

来自分类Dev

Swift中的条件Segue

来自分类Dev

在Swift中将segue从UITableViewCell推送到ViewController

来自分类Dev

Xcode-从UIImageView到新的ViewController的Segue

来自分类Dev

ViewController之间的Segue出现问题

来自分类Dev

Swift-在Segue之后保存ViewController设置

来自分类Dev

从ViewController到Storyboard或segue到Tabbar Controller

来自分类Dev

Xcode 6中的“ Show” segue在iOS 7中将viewcontroller作为模态呈现

来自分类Dev

Xcode segue有时在Tableview中工作

来自分类Dev

为什么我的segue无法正常工作?在Xcode目标C上

来自分类Dev

Swift:在UIAlertController中访问文本字段/ segue到新的ViewController

来自分类Dev

Swift:在UIAlertController中访问文本字段/ segue到新的ViewController

来自分类Dev

Segue不是视觉上执行的

来自分类Dev

为什么我不能在xcode 6.1中使用show segue?

来自分类Dev

Swift Segue无法正常工作?

来自分类Dev

Tableview Segue无法正常工作?

来自分类Dev

Swift Segue无法正常工作

Related 相关文章

  1. 1

    从Segue Stack中删除ViewController

  2. 2

    Segue没有在viewController中执行

  3. 3

    ViewController Segue Xamarin

  4. 4

    ViewController Segue和登录

  5. 5

    使用Sender为Swift中的Segue做准备

  6. 6

    从Table View Cell Xib进行Segue,并在情节提要中显示指示器

  7. 7

    在XCode中以编程方式执行segue后,空白ViewController

  8. 8

    segue之后,重用的ViewController中的搜索栏无响应

  9. 9

    IOS开发中的Segue是什么?

  10. 10

    单击后从 Cell 中推送 segue 不起作用

  11. 11

    Swift iOS:从ViewController中的实例执行Segue到另一个ViewController

  12. 12

    通过tableview中的按钮进行segue执行2次segue,而不是1次

  13. 13

    在Swift中滑动Segue

  14. 14

    Swift中的条件Segue

  15. 15

    在Swift中将segue从UITableViewCell推送到ViewController

  16. 16

    Xcode-从UIImageView到新的ViewController的Segue

  17. 17

    ViewController之间的Segue出现问题

  18. 18

    Swift-在Segue之后保存ViewController设置

  19. 19

    从ViewController到Storyboard或segue到Tabbar Controller

  20. 20

    Xcode 6中的“ Show” segue在iOS 7中将viewcontroller作为模态呈现

  21. 21

    Xcode segue有时在Tableview中工作

  22. 22

    为什么我的segue无法正常工作?在Xcode目标C上

  23. 23

    Swift:在UIAlertController中访问文本字段/ segue到新的ViewController

  24. 24

    Swift:在UIAlertController中访问文本字段/ segue到新的ViewController

  25. 25

    Segue不是视觉上执行的

  26. 26

    为什么我不能在xcode 6.1中使用show segue?

  27. 27

    Swift Segue无法正常工作?

  28. 28

    Tableview Segue无法正常工作?

  29. 29

    Swift Segue无法正常工作

热门标签

归档