通过 Push Segue 导航到 ViewController 打开屏幕然后立即关闭它

Navigation to ViewController via Push Segue opens screen then immediately closes it

我有一个 SearchViewController,其中包含一个显示文章的 UITableView

当按下一篇文章时,将调用带 segue 命令的导航,用户将移动到 ArticleViewController 屏幕,以便他可以阅读该文章。

出于某种原因,文章屏幕打开后(你可以看到里面所有填充的ui元素)它立即关闭 并且用户再次返回到搜索屏幕。

导航指令为:

func actionButtonDidPress(inside article: Article) {
        selectedArticle = article
        self.performSegue(withIdentifier: Constants.Segues.SEARCH_TO_ARTICLE, sender: self)
    }
    
    override func prepare( for segue: UIStoryboardSegue, sender: Any? ) {
        if let selectedArticle = selectedArticle {
            if segue.identifier == Constants.Segues.SEARCH_TO_ARTICLE {
                let destinationVC = segue.destination as! ArticleViewController
                destinationVC.currentArticle = selectedArticle
            }
        }
    }

我不认为它是 ArticleViewController 内部的东西,因为当我从 HomepageViewController 执行相同的过程时(table 查看文章 -> 按文章导航到文章页面)一切正常。

两次我都使用 Show segue 并将相同的元素发送到 ArticleViewController。

什么可能导致此问题?

(当我切换到 Present Modally segue 时它解决了问题,但后来我丢失了应该显示的 TabBar 或者丢失了其他需要的功能所以我不想要这个解决方法)

找不到解决方案,所以最终只是将我在应用程序中的所有转场从“显示”切换到“模态呈现”和“演示:当前上下文”,因为这是对屏幕有效的是最接近我需要的外观