iOS 应用程序不会返回到同一个视图控制器

Posted

技术标签:

【中文标题】iOS 应用程序不会返回到同一个视图控制器【英文标题】:iOS Application does not return to same View Controller 【发布时间】:2017-10-29 19:34:47 【问题描述】:

我在我的应用程序中使用相机。我检查相机权限,如果未启用相机权限,我会显示一个对话框,要求用户转到设置。

如果用户接受,我会重定向到设置页面。这里有2个案例-

1) 如果用户接受对话框并进入设置页面但未启用相机权限但单击返回(带有应用程序名称,而不是设置导航栏上的返回),则会显示重定向到设置的视图控制器。

2) 如果用户启用相机权限并点击返回,则会显示应用的 Home View Controller。

我想显示在这两种情况下都重定向到设置的视图控制器。

我的视图控制器中有以下代码,但在第二种情况下仍然没有调用此函数。

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationDidBecomeActive) name:UIApplicationDidBecomeActiveNotification object:nil];

我正在使用 Objective-C

【问题讨论】:

【参考方案1】:

当用户更改应用程序Settings 时,操作系统会自动终止应用程序。这就是为什么当您在 2) 而不是 1) 中单击返回时您的应用会启动的原因

See also

模拟回来后的恢复,

1) 在离开之前添加一个带有活动UIViewController 名称的UserDefaults 值 2) 在appDidFinishedLaunching 上重定向到它。

【讨论】:

那我如何检测到并进入所需的视图控制器?

以上是关于iOS 应用程序不会返回到同一个视图控制器的主要内容,如果未能解决你的问题,请参考以下文章

iOS:从任何地方返回根视图控制器

iOS - 如何推送到视图控制器并在返回时保持正确的“视图堆栈”

如何在 ios 中的一个控制器的按钮操作中返回当前的上一个视图

iOS 以编程方式转到选项卡和推送视图控制器

当被模态视图控制器覆盖时,iOS 6 视图控制器布局在方向更改后不会更新

[iOS]:检测从另一个外部应用程序返回后视图控制器何时出现