gpt4 book ai didi

ios - 如何从嵌入在不同 UINavigationController 中的多个 UIViewController 切换到一个 UIViewController

转载 作者:行者123 更新时间:2023-11-28 08:26:31 25 4
gpt4 key购买 nike

在我的举重应用程序中,我有一个 View Controller ,我想将其用于几个不同的目的。一种是选择将保存为用户默认值的电梯类型。另一种是选择将用于按电梯类型过滤用户电梯日志的电梯类型。

其中一条路径(选择默认路径)从“设置”屏幕开始。当您点击 UITableViewCell 转到“选择提升”屏幕时, View 会按预期从右向左滑入,但是,它会立即再次从右向左滑入 View ,并且导航栏指向回到,好吧,它本身:

enter image description here

这是我的 Storyboard布局:

enter image description here

这里是相关的segue代码:

// MARK: - Segues

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "goToLifts" {
let vc = segue.destinationViewController as! LiftSelectionTableViewController
vc.delegate = self
} else {
return
}
}

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath:NSIndexPath) {
switch indexPath.row {
case 0: performSegueWithIdentifier("goToFormulas", sender: self)
break
case 1: performSegueWithIdentifier("goToLifts", sender: self)
break
default:
break

}
}

我使用的是 Swift 2.3 和 Xcode 8。

我阅读了 Apple 的文档并发现了几个关于 SO 的主题,这些主题涉及多个 vc 到一个 vc,但它们要么处理传递数据问题,要么处理其他问题。

谁能告诉我为什么会发生这种情况以及如何解决它?

更新:

按照@vacaWama 的建议进行更改,现在它从底部出现并且没有导航栏:

enter image description here

更新 2:

.storyboard 源代码超出了限制,所以这里是 GitHub 上的链接:

Link to storyboard file

最佳答案

我怀疑您从原型(prototype)单元连接了您的 segue,因此当您选择该单元时它会被触发,当您第二次调用 performSegueWithIdentifier 时它会被触发。如果您想以编程方式调用 segue,请将其连接到 tableViewController 顶部的 viewController 图标。

@vacawama, you suspect correctly. The view is now presenting modally and with no navigation bar (see my edited question). From the Settings screen, I want it to slide in from right to left, but from the log screen I DO want it to present modally from the bottom. I tried connecting the segue to the nav controller it's embedded in, but that didn't make a difference. Do you know how I can fix this?

您需要在 Storyboard中选择转场箭头,然后将属性检查器中的转场类型更改为显示

如果我直接使用 Show segue 来Select a lift type,它会从右向左推。如果我对 Navigation controller 使用 Show segue,它会以模态方式呈现。重新连接您的 segue 并确保它直接转到 viewController 而不是 Navigation controller

关于ios - 如何从嵌入在不同 UINavigationController 中的多个 UIViewController 切换到一个 UIViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39819772/

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