从第二个 ViewController 返回到第一个 ViewController

2023-12-23

我正在构建一个当前有 3 个 ViewController 的应用程序。其中之一是在成功登录后使用的,因此与这个问题无关。

当我发现 Storyboard 无法提供所需的精细控制时,我混合使用 Storyboard 并以编程方式构建内容。

第一个 ViewController 内置在我的“MainStoryboard”中。它的底部有一个登录表单和一个信息按钮。我通过在内部执行以下操作将其链接到我的 AppDelegatedidFinishLaunchingWithOptions:

ViewController *viewController = (ViewController *)self.window.rootViewController;

因为我想强制渲染 UIWebView(另一个故事),所以我以编程方式创建了第二个视图。我在里面做了以下事情didFinishLaunchingWithOptions:

infoViewController = [[InfoViewController alloc] init];
[infoViewController view];

在我的两个 ViewController 中,我设置了一个指向 appDelegate 的链接,如下所示:

appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];

我的第一个 ViewController 中有一个信息按钮,可将您带到 infoViewController。点击时它会调用以下代码:

appDelegate.infoViewController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:appDelegate.infoViewController animated:YES];

上面的内容对我来说效果很好,翻转屏幕并显示 InfoViewController。

在我的 InfoViewController 上,我有一个按钮可以带您返回登录页面,我已经尝试了各种方法来使其正常工作,但它只会使我的应用程序崩溃。似乎没什么作用。我已经尝试过以下方法:

appDelegate.viewController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:appDelegate.viewController animated:YES];

and

[self.navigationController popToRootViewControllerAnimated:YES];

and

[self.navigationController popViewControllerAnimated:YES];

and

[self.navigationController popToViewController:appDelegate.viewController animated:YES];

我怀疑当你有一个导航视图控制器并且你想返回到根目录时,最后 3 个可能更多地与此有关?我不确定,但无论如何它都不起作用。我之前使用故事板进行过这项工作,所以我确信它应该很容易!如前所述,我转而以编程方式制作 infoViewController,以便我可以强制 UIWebView 在视图出现之前呈现。

非常感谢任何帮助。


你可以这样做:

[self dismissModalViewControllerAnimated:YES];
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从第二个 ViewController 返回到第一个 ViewController 的相关文章

  • 我可以提高当前模态视图控制器的动画速度吗?

    我正在编写一个绘图应用程序 当用户单击工具栏中的项目时 该应用程序会显示工具视图控制器 然而 我的几位 Beta 测试人员报告说 工具面板打开速度太慢 我使用标准的 presentModalViewController animated 调
  • 如果没有解析器生成器,如何用 C 或 Objective-C 编写解析器?

    我正在尝试用 C 或 Objective C 制作一个计算器 它接受以下字符串 8 2 4 3 9 2 并返回答案 2920 我不想使用像 Lex 或 Yacc 这样的生成器 所以我想从头开始编码 我该怎么做呢 除了 龙 这本书之外 还有其
  • 我应该在哪里保存想要长期保留的数据和文件,以及如何防止 iCloud 备份它们

    我有任意类型的文件 包括核心数据存储库 我需要保留这些文件 并且不要让 iOS 删除它们 通常 我不希望 iCloud 备份这些文件 我应该把它们保存在哪里 iOS5 0 及更早版本 5 0 1 和 5 1 及更高版本中保存文件的本地更改主
  • Xcode 6.3 和 Swift:Unicode 实用程序(例如 UCKeyTranslate)不可用?

    我有以下测试代码 import Cocoa import Carbon let x kUCKeyActionDisplay 在 Xcode 6 2 中没有问题 但在 Xcode 6 3 中此代码会引发错误 错误信息是 Use of unre
  • UITableView 部分始终保持在视图内

    我有一个包含 3 个部分的 UITableView 第 1 节 该部分的标题是 Players 内容恰好是 1 个单元格 包含 1 4 个玩家姓名的水平列表 第 2 节 该部分的标题是 回合 内容是 X 个单元格 每个单元格包含每个玩家在第
  • iPhone Objective-C 以编程方式将范围按钮添加到 UISearchBar

    我目前这段代码用于创建 UISearchBar 改编自之前的 stackoverflow 示例 UISearchBar searchBar UISearchBar alloc initWithFrame CGRectZero searchB
  • initWithFrame 与 initWithStyle

    我想从已弃用的 TableView 中更新initWithFrame reuseIdentifier 我的表格视图使用自定义单元格 到处都说要使用initWithStyle 并且它不会以任何方式改变行为或细胞initWithFrame CG
  • 同一视图中的多个 UIAlertView

    我有两个带有确定 取消按钮的 UIAlertView 我通过以下方式捕获用户响应 void alertView UIAlertView alertView didDismissWithButtonIndex NSInteger button
  • 框架链接错误,找不到图像?

    我在我的应用程序中使用 DarwiinRemote 的 WiiRemote framework 我已经通过下载源代码并要求垃圾收集以及针对 10 5 进行构建来修复了一些问题 但是 当我尝试将其添加到我的项目时 我收到控制台错误 dyld
  • 如何在当前视图上方创建半透明视图层?

    您可能以前见过这种情况 它在 ScoutMob 等消费时尚应用程序中变得非常流行 我正在尝试在启动时实现 60 的透明视图 该视图将覆盖我的主屏幕 解释如何使用主屏幕的功能并在点击时消失 我已经完成了整个应用程序 它从几年前就开始使用 xi
  • 使用 Xcode 资产目录缓存 UIImage

    我们都知道UIImage神秘的幕后缓存机制imageNamed 方法 在苹果的UIImage 类参考 https developer apple com library IOS documentation UIKit Reference U
  • NSXMLParser 解析使用 Windows-1256 编码的 xml 文件

    我想解析 Windows 1256 编码的 rss 文件 但解析器没有读取它 我用 UTF8 编码做了很多解析 但只有这个不起作用 为什么 带有 Windows 1256 的 rss 文件 http youm7 com Rss asp 解决
  • Objective C - 后台执行选择器并且分离新线程选择器?

    detachNewThreadSelector 和performSelectorInBackground 都用于在后台调用方法 2种方法有什么区别吗 或者它们的工作方式相同吗 它们本质上是相同的 但范式略有不同 他们在幕后做着完全相同的事情
  • 在 UIScrollView Swift 中禁用垂直滚动

    不要将此问题标记为重复 我读了很多问题 但没有找到问题的答案 我的问题如下 我有一个UIScrollView它应该只水平滚动 这里它垂直滚动 20px 奇怪的事实 它似乎与状态栏的高度相同 我尝试打印内容大小 y 偏移量和高度UIScrol
  • iOS Javascript 引擎 parseFloat(1) 返回负数

    这段代码将使错误出现 function causeBug d var k var n parseFloat 1 var c Math abs d if n lt 0 k else k return k n function for var
  • 不同形状的图像拼贴

    我对照片编辑应用程序开发完全陌生 我如何开发这样的网格样式 以便我可以添加从相机胶卷中选取的多个图像来创建拼贴画 我浏览了下面的链接 但没有找到实现这一目标的方法 任何建议或链接都 会有帮助 LINK1 https stackoverflo
  • 我可以混合 UITableViewDelegate 的 didSelectRowAtIndexPath: 吗?

    问题是这样的 我需要能够在具有大量表视图的大型现有应用程序中获取 didSelectRowAtIndexPath 的分析 我的第一个想法是在 didSelectRowAtIndexPath 上进行方法调整 但是我的应用程序崩溃并显示 无法识
  • 归档时出现“没有此类模块”错误

    我的 Swift 4 应用程序在所有模拟器上重建并成功运行 除了Generic iOS Device 如果我尝试将其存档或重建Generic iOS Device 我得到一个No such module与我的 Pod 框架之一相关的错误 我
  • 文本字段创建操作而不是出口

    我正在开发我的第一个应用程序 具有多个视图屏幕 并且在第一个视图上一切都运行良好 我添加了几个文本字段 并能够将它们作为插座连接到控制器 并从中获取值 管理它并吐出它回到标签 我尝试将第二个视图上的文本字段控制拖动到第二个控制器视图 当我这
  • iOS:如何实现像Android的startActivityForResult这样的行为

    我是一名 Android 开发人员 正在开发我们应用程序的 iOS 版本 我需要知道如何在 Android 上实现类似于 startActivityForResult 的行为 我需要显示一个新的视图控制器 然后在新的视图控制器关闭时将控制权

随机推荐