菜鸟教程小白 发表于 2022-12-13 15:49:12

ios - Xamarin iOS : navigation bar not showing after pushing view


                                            <p><p>我已经在代码中创建了所有 UI(因为我使用了 <a href="https://components.xamarin.com/view/flyoutnavigation" rel="noreferrer noopener nofollow">Flyout Navigation</a>,这似乎不适用于 Storyboard )。我有一个名为 <code>MainController</code> 的 UINavigationController 和一系列 ViewController 。当我使用根 Controller 启动应用程序时,它会很好地显示导航栏。</p>

<p>当我以编程方式创建一个名为 <code>ArticleDisplay</code> 的新 ViewController 时,我会这样创建并推送它(在 MainController 中):</p>

<pre><code>public void Open_Article(Post post)
{
    ArticleDisplay vw = new ArticleDisplay(this);
    vw.SetPost(post); // to set the iOS

    this.PushViewController(vw, true);
}
</code></pre>

<p>当我运行应用程序并显示 ArticleDisplayController 时,我没有看到导航栏 (<a href="/image/Km6Vt.png" rel="noreferrer noopener nofollow">as you can see in this image</a>),尽管主视图 Controller 有一个导航栏。尝试执行 <code>this.SetNavigationBarHidden(false,true)</code> 之类的操作什么也不做。</p>

<p>如何让导航栏显示?我确定我在某个地方搞砸了。我需要它,这样我才能让用户回到他们之前所在的 Controller 。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>在查看 <code>FlyoutNavigation</code> 之后,似乎可以使用 <code>Storyboard</code></p>

<p> <a href="/image/h7Nrd.png" rel="noreferrer noopener nofollow"><img src="/image/h7Nrd.png" alt="Using storyboard"/></a> </p>

<p>尝试下载示例项目 (<a href="https://github.com/Clancey/FlyoutNavigation/tree/master/FlyoutNavigationSample/FlyoutNavigationSample" rel="noreferrer noopener nofollow">as pointed out by Mohib Sheth</a>) 并在按钮和第二个 View 之间创建一个推送段。</p>

<p><strong>使用 <code>PushViewController</code> 方法</strong></p>

<p>如果您仍想使用 <code>PushViewController</code> 方法,请确保您的初始 View (如单击 FlyOutNavigation 项后所示)是 <code>NavigationController</code>。此 <code>NavigationController</code> 将控制当前页面的导航堆栈。</p>

<p>现在 <code>ViewController</code> 由 <code>NavigationController</code> 包装,您可以添加一个按钮或只调用 <code>NavigationController.PushViewController</code> 方法。</p >

<pre><code>PushView.TouchDown += (evt, args) =&gt;
{
    NavigationController.PushViewController(new UIViewController(), true);
};
</code></pre>

<p>我希望这会有所帮助!</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - Xamarin iOS : navigation bar not showing after pushing view,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/36393192/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/36393192/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - Xamarin iOS : navigation bar not showing after pushing view