gpt4 book ai didi

iphone - Modal Segue iOS 后同一 TabBarController 的多个实例

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:18:50 24 4
gpt4 key购买 nike

我有一个应用程序,其中一个主 TabBarController 包含两个控制两个不同 View A 和 B 的选项卡。 View A 是一个 ScrollView , View B 是一个 TableView。当我最初加载应用程序时, View A 中的 ScrollView 是空的。

为了向我的 scrollView 添加页面,我将其设置如下:我转到 View B 并执行一个模式转场到嵌入了导航栏的 View 。 navigationBar 只有一个按钮“取消”,我用它来关闭 View 。否则,用户必须单击图像并执行另一个模式转场到不同的 View 。这个 View 没有导航栏,只有一个按钮“DONE”,我用它来执行返回初始 tabBarController 的模式转场。

这是问题所在:在我按下“完成”后,页面添加到 ScrollView 时没有出现任何错误。但是,我相信我现在有两个相同的 tabBarController 实例在内存中 float 。当我尝试使用不同的按钮获取 scrollView 中包含的 View 时,它告诉我它现在是空的(即使在 viewDidLoad 和 viewDidAppear 期间它已满)。

我怎样才能删除初始的 tabBarController View ,否则我怎样才能返回到我已经分配的 tabBarController?任何帮助将不胜感激!谢谢!

最佳答案

你不应该做一个 segue 回到原来的 View Controller 。相反,您应该关闭当前的动画 View Controller ,并显示您的原始 tabBarController。

在您返回的 View 中,添加:

tabBarController *tabs = (tabBarController*)[[self presentingViewController]presentingViewController];
tabs.selectedViewController = [tabz.viewControllers objectAtIndex:0];

[[[self presentingViewController] presentingViewController] dismissViewControllerAnimated:YES completion:nil];

然后您将看到 View A 并仍然使用相同的分配。

关于iphone - Modal Segue iOS 后同一 TabBarController 的多个实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13093704/

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