【发布时间】:2019-09-11 08:45:57
【问题描述】:
我在展示另一个视图控制器时遇到问题。我能够做到这一点的唯一方法是使用这行代码:
UIApplication.shared.keyWindow?.rootViewController?.present(partyMemberPage, animated: false, completion: nil)
这是整个函数:
func partyMemberPage() {
let layout = UICollectionViewFlowLayout()
let partyMemberPage = PartyMemberPage(collectionViewLayout: layout)
UIApplication.shared.keyWindow?.rootViewController?.present(partyMemberPage, animated: false, completion: nil)
print("from SplitButton")
}
尽管上面的代码有效,但我很好奇为什么下面的代码无效。我尝试的一切,我得到一个错误,说我需要用非零布局参数初始化UICollectionView。
self.present(partyPage, animated: true, completion: nil)
我几乎可以肯定我有正确的项目可以使用self.present(),但我无法让它在这个 vc 上工作。
PS:我也很好奇什么时候更改rootViewController(如第一行代码)是个好主意,什么时候可以接受以模态方式呈现视图控制器。我的应用程序将处理存储少量数据,那么长期传输这些数据的最佳方式是什么。
非常感谢所有帮助。如果需要,我可以提供更多代码。我对 swift 和一般编程非常陌生,所以如果某些逻辑有缺陷,请原谅我。谢谢!
【问题讨论】:
标签: swift presentviewcontroller