微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么我的 .pushViewController 不能在 swift 中从 didSelectItemAt 工作

如何解决为什么我的 .pushViewController 不能在 swift 中从 didSelectItemAt 工作

当我用户通过 didSelectItemAt 函数从列表中选择一个项目时,我试图推送一个 viewController,但是当用户选择该项目时什么也没有发生。

这是我的 didSelectItemAt 函数到目前为止的样子:

override func collectionView(_ collectionView: UICollectionView,didSelectItemAt indexPath: IndexPath) {
    print(stores[indexPath.row].storeName)
    let myStore = UserStoreVC(collectionViewLayout: UICollectionViewFlowLayout())
    myStore.store = stores[indexPath.row]
    navigationController?.pushViewController(myStore,animated: true)
}

这是我如何设置我的 UserStoreVC 类:

class UserStoreVC: UICollectionViewController,UICollectionViewDelegateFlowLayout {}

用户选择商品时,该功能会被调用,因为商店名称通过打印功能正确打印,但没有显示任何内容,我不知道为什么不。

我是不是做错了什么,因为这是我在同一个应用程序中推送其他 viewController 并且它正常工作的方式

我如何使它工作?

当我向这一行添加断点时,我得到了这个:

enter image description here

discoverCollection 集合视图:

let collectionView: discoverCollection = {
    let layout = UICollectionViewFlowLayout()
    layout.scrollDirection = .horizontal
    let view = discoverCollection(collectionViewLayout: layout)
    return view
}()

解决方法

步骤 1:查看此处为您的 ViewController 添加 NavigationController 的步骤: enter image description here

第 2 步:单击为您的 VC 添加 NavigationController。 enter image description here

第 3 步:最后你有导航控制器。 enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。