【问题标题】:push DetailViewController when popping MasterViewcontroller弹出 MasterViewcontroller 时推送 DetailViewController
【发布时间】:2013-05-20 04:46:38
【问题描述】:

在我的 iPad 主详细信息应用程序中,我有一个主视图控制器,其中包含表视图和详细视图。当用户单击一行时,它会推送另一个主视图和详细视图,现在当我单击主视图上的后退按钮时,只有主视图弹出。我需要知道如何在用户单击主视图后退按钮时弹出详细视图控制器甚至推送它(我已将导航栏设置为隐藏在详细视图中并希望保持不变)

【问题讨论】:

    标签: ios ipad uinavigationcontroller


    【解决方案1】:

    基本上,当单击返回按钮时,会调用viewWillDisappear 方法。所以是的,当在主视图控制器上调用此方法时,您可以推送所需的详细视图控制器:

    -(void) viewWillDisappear:(BOOL)animated {
       //Push desired detail view controller
       //If you want to use tags, make sure you set a tag for the view property of each master view controller before you push it to the stack
       if (self.view.tag == 1) {
         //For example, assuming views are tagged from 0, this is second master view controller 
        }
    }
    

    【讨论】:

    • 这行得通,但问题是它在从第二个主视图弹出到第一个主视图时以及从第二个主视图推送第三个主视图时都有效。我需要它仅在弹出第 2 到第 1 时才能工作。
    • 这很简单,你只需为每个主视图控制器设置一个tag1,2,3, etc,然后每次比较它就知道哪个主视图是当前的。或者,如果您每次使用不同的标题,另一种方法是比较导航栏的标题。告诉我。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多