gpt4 book ai didi

ios - 从按钮执行序列

转载 作者:行者123 更新时间:2023-11-28 22:34:09 25 4
gpt4 key购买 nike

目前,我正在使用 Xamarin.iOS 编写一个 iOS 应用程序,并且我编写了一个名为 BaseTabbarController 的自定义 UITabbarController。在这个 ViewController 中,我在 TabBar 上做了一个居中凸起的 UIButton 来实现这样的效果: RaisedCenterButton

所以这意味着在我的 BaseTabbarController 中有一个用于我的按钮的 onClick 委托(delegate)。当按下按钮时,我想对新的 ViewController 进行 performSeque(push)。以下代码给出了错误:“无法找到 segue 'searchSegue' 的导航 Controller 。推送 segues 只能在源 Controller 由 UINavigationController 的实例管理时使用。

那我现在该怎么办呢?我不确定如何解决这个问题..

我的 Storyboard看起来像这样,我说的是第二行。 enter image description here

最佳答案

如果导致 push segue 的按钮在 tabbar 上,那么你不能在它上面执行 push segue,因为 tabbar Controller 应该是一个 rootview Controller 并且要有 push segue 你的 Controller 必须有导航 Controller 作为容器。

例如,MyViewController 是 View A 的 Controller ,OneMoreViewController 是 View B 的 Controller ,现在您想从 View A 调用 View B,然后将 View A 嵌入到导航 Controller 中

//以编程方式

MyViewController *vc= [MyViewController alloc] init];

UINavigationController *nav = [UINavigationController alloc] initWithRootViewController: vc];

如果您想在标签栏中添加 View A,则在标签栏中添加导航对象。

现在您可以使用 Push segue 从 View A 调用 View B。

//如果你使用 Storyboard,那么

选择要嵌入到导航 Controller 中的 View ,然后从菜单栏中选择 Editor\Embed In\Navigation Controller。就是这样。

关于ios - 从按钮执行序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16592469/

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