在当前上下文中展开而不是全屏

时间:2014-09-05 16:39:47

标签: ios containers segue

我的问题是关于一个非常特殊的情况。 我的英语不是很令人印象深刻,所以让我们首先看一下故事板:

......喘息!我无法发布图片!!!

嗯......这不容易,但让我们去......

我们有:

  • 首先是一个带有2个ViewControllers的tabBarController。
    • 第二个将被称为" Vue 2.1"。它是UIViewController的子类,里面有一个很棒的UITableView和一个navigationBar。 navigationBar有一个按钮" Add"触发segue到新的导航控制器。 segue模拟全屏显示。
      • 导航控制器导致另一个名为" Vue 2.2"的UIViewController;与容器。
        • 容器嵌入了另一个导航控制器和名为" Vue 2.3"的UITableViewController。
          • 最后一个"添加" " Vue 2.3"中的按钮;有一个触发segue到新的导航控制器和最后一个UIViewController(" Vue 2.4")。最后一个segue在当前上下文中以模态存在。

在Vue 2.2和2.4中,导航栏中有按钮与vue 2.1和2.3的展开功能相连(retour21和retour23)

我尽可能少地详细说明了这个例子。视图只有两个类别" Vue 2.1"和" Vue 2.3"。

这里有两个班级:

Vue 2.1:

class SecondViewController: UIViewController, UITableViewDataSource {

    @IBOutlet var table: UITableView!

    @IBAction func retour21(segue :UIStoryboardSegue) {
    }

    override func viewDidLoad() {
        super.viewDidLoad()
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    func tableView(tableView: UITableView!, numberOfRowsInSection section: Int) -> Int {
        return 0
    }

    func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell! {
        var cell = self.table.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as UITableViewCell
        cell.textLabel.text = ""
        return cell
    }   
}

Vue 2.3:

class vue23ViewController: UITableViewController {

    @IBAction func retour23(segue :UIStoryboardSegue) {
    }

    override func viewDidLoad() {
        super.viewDidLoad()
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}

令人印象深刻,呃?

那么,问题是什么?

运行该应用程序。 tabBar正常工作。出现第二个视图。点击添加按钮可以全屏打开Vue 2.2而不会出现问题。 Vue 2.2包含Vue 2.3和他自己的添加按钮。点击它:&#34; Vue 2.4&#34;出现在容器中:好!但是当你点击按钮放松到&#34; Vue 2.3&#34;时,这个按钮出现在全屏而不是&#34; Vue 2.2&#34; ... <的容器中。 / p>

为什么?

我几天前正在寻找答案......请帮助我!!!

如果我在&#34; Vue 2.1&#34;中插入另一个容器。如果这个容器嵌入了&#34; Vue 2.3&#34;的导航控制器,一切运行良好!

我迷失了......

0 个答案:

没有答案