【问题标题】:Pushing view controller from app delegate从应用委托推送视图控制器
【发布时间】:2012-12-29 01:34:06
【问题描述】:

所以最近我不得不重新组织我的标签栏并删除一个视图控制器的标签,我仍然需要在应用程序结束时访问它。我正在使用 NSNotifications 触发应用程序委托中的一个方法,该方法基本上切换选项卡[self.myTabBar setSelectedIndex:REC_TAB];

工作就像一个魅力。现在我无法再选择选项卡,我发现我无法从应用程序委托推送/弹出/呈现视图控制器。

我是新手,因此我们将不胜感激。

【问题讨论】:

    标签: ios uiviewcontroller nsnotificationcenter pushviewcontroller presentmodalviewcontroller


    【解决方案1】:

    您没有理由必须从应用委托中执行此操作 - 如果您愿意,您可以这样做,但没有必要。从任何视图控制器,您可以使用 self.view.window.rootViewController 访问窗口的根视图控制器,并将其更改为您想要的任何内容。另一种方法是只从任何视图控制器呈现一个带有 presentViewController:animated: 的模态视图控制器。

    【讨论】:

    • 我需要从应用程序委托中推送它,因为在应该推送视图控制器的方法中,我调用了位于应用程序委托中的另一个方法。我已经尝试了几乎所有我能想到的...[self.view.window.rootcontroller push/present modal/viewcontroller],但无济于事。我也尝试过从标签栏和导航栏推送,但没有骰子。有任何想法吗?也许更具体?无论哪种方式,我都感谢您的回复。
    • @Miles,我需要知道您的应用程序的结构才能回答您的问题。这个视图控制器是否嵌入在导航控制器中?如果没有,那么你不能推动它,但你应该能够呈现它。什么是窗口的根视图控制器?你的标签栏控制器?
    • 它嵌入在导航控制器中,是的,我的 tabBarController 是根。
    • 事实证明,从另一个视图控制器推送更容易。我不得不做一些重新安排,但一切都解决了。感谢您的帮助!
    猜你喜欢
    • 2013-06-04
    • 1970-01-01
    • 2014-11-25
    • 2013-10-26
    • 1970-01-01
    • 2021-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多