gpt4 book ai didi

iphone - Segue 使用错误的动画且后退按钮未显示

转载 作者:行者123 更新时间:2023-11-30 10:06:49 25 4
gpt4 key购买 nike

我正在使用UINavigationController里面 UITabBarController在我的项目中。里面这个UINavigationController有一个UICollectionView 。在 UICollectionView ,点击集合中的项目后,应执行显示segue以查看某种详细信息页面,您可以从该页面返回或转到应用了不同数据过滤器的另一个集合。

作为 iOS 开发新手,我很难让事情按照我想要的方式运行。即使所有 Segues 都设置为 show在 Storyboard中,它们作为模态动画进行动画处理(从底部而不是右侧进入)。

后退按钮也不会出现。我在属性检查器中为其设置了文本(我已经知道这些文本必须位于“消失”的 View 中),并且还为所有导航项添加了标题……仍然没有显示它们的迹象。

这是我的 Storyboard:storyboard

这是prepareForSegue我使用:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "showService" {
if let indexPath = self.collectionView?.indexPathsForSelectedItems() {
let object = serviceData[indexPath.last!.row]
let controller = (segue.destinationViewController as! UINavigationController).topViewController as! ServiceDetailViewController
controller.serviceItem = object
controller.callerItem = self.name
controller.navigationItem.leftItemsSupplementBackButton = true
}
}
}

我在collectionView:didSelectItemAtIndexPath:中触发segue我的收藏 View :

override func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) {
let cell = self.collectionView?.cellForItemAtIndexPath(indexPath)
performSegueWithIdentifier("showService", sender: cell)
}

最佳答案

问题是您的 Segue 从导航 Controller 的子级(“另一个标题”)运行到导航 Controller 。这不是在导航界面中构建推送/显示序列的方式。您需要从导航 Controller 的子级运行到另一个子级,即,例如到您的“标题” View Controller 。因此,如果(比方说)您的推送/显示转场从“另一个标题”运行到“标题”,那么当触发该转场时,“标题” View Controller 将被推送到与“另一个标题”相同的导航 Controller 堆栈上“ View Controller ,因此您将在导航栏和后退按钮中看到标题更改。

关于iphone - Segue 使用错误的动画且后退按钮未显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35489158/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com