我正在尝试显示一个显示视频缩略图集合的屏幕,并且当用户点击其中一个缩略图时,视频就会打开。我有两个视图控制器,一个是集合视图,一个是视频播放器,两者都嵌入在导航控制器中。我有以下代码:
extension BrowserCollectionViewController {
override func collectionView(_ collectionView: UICollectionView,
shouldSelectItemAt indexPath: IndexPath) -> Bool {
self.performSegue(withIdentifier: "ShowPlayer", sender: indexPath)
return false
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "ShowPlayer" {
guard let sender = sender as? IndexPath else {
return
}
if let playViewController = segue.destination as? PlayerViewController {
playViewController.metadata = movies[movieIndex(sender)]
}
}
}
}
这很好用,除了过渡看起来像是标准的推送按钮,而且我希望它看起来像缩略图扩展成为视图控制器(播放器也碰巧隐藏了导航栏,因此看起来像是完整的屏幕视图)。这看起来与原始“照片”应用的行为完全一样,因此我认为这可能是标准转换。