菜鸟教程小白 发表于 2022-12-12 21:26:23

ios - UITableView 中缺少 UINavigationBar


                                            <p><p>我以模态方式展示一个 <code>UITableView</code> 以提供对某些应用程序设置的访问。当模态视图( Root ViewController )出现时,它有一个我期望的导航栏。 However, when one of the options is selected and the next 'UITableView` is popped to the top of the stack, there's no navigation bar.</p>

<p> <a href="/image/0KRKa.png" rel="noreferrer noopener nofollow"><img src="/image/0KRKa.png" alt="Storyboard"/></a> </p>

<p>这是其中一个子 <code>UITableViews</code> 的样子:</p>

<p> <a href="/image/icRXB.png" rel="noreferrer noopener nofollow"><img src="/image/icRXB.png" alt="enter image description here"/></a> </p>

<p>据我所知,这两个 subview 应该有导航栏,而我不必做任何事情,因为它们嵌入在 <code>UINavigationController</code> 中。</p>

<p>我尝试将导航栏拖到 View 中,但 IB 只会让我将它们放在 UITableView 中,如果我这样做,它们确实会出现,但它们在 View 中也太高并跑到状态栏,我可以对它们设置任何布局约束来解决这个问题。</p>

<p>我没有走运地搜索了 Apple 文档,并在 SO 上发现了许多非常非常古老且在 Objective-C 中的线程。</p>

<p>我可以让这些 View 像我期望的那样一起工作,还是我必须从头开始构建 subview ?</p>

<p><strong>更新</strong>:我仍在努力让它发挥作用。我现在尝试从头开始创建一个新的 ViewController 。 View 层次结构如下所示:</p>

<p> <a href="/image/0SLs3.png" rel="noreferrer noopener nofollow"><img src="/image/0SLs3.png" alt="enter image description here"/></a> </p>

<p>您可以在 Storyboard 中看到一些不对劲的地方:</p>

<p> <a href="/image/2qAVA.png" rel="noreferrer noopener nofollow"><img src="/image/2qAVA.png" alt="enter image description here"/></a> </p>

<p>当我在模拟器中运行它时,我得到一个新的错误:</p>

<p>“ 使用 Storyboard“Main”中的标识符“UIViewController-cDg-wV-aMN”实例化 ViewController ,但没有获得 UITableView。但是我通过 Ctrl 键从根 VC 中的单元格直接拖动到 TableView 来创建 segue。</p>

<p>总而言之,这是我想要实现的流程:UIViewController(初始 VC)-> UINavigationController(从底部模态显示)-> UITableViewController(从右到左显示并带有标准导航栏)。 </p>

<p>我的 segues 都设置为 Show(例如 Push)</p>

<p>任何帮助或建议将不胜感激。 </p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>好吧,在遇到 <a href="https://stackoverflow.com/questions/35232018/segue-from-tableview-to-view-preceded-by-navigation-controller?rq=1" rel="noreferrer noopener nofollow">another thread</a> 后,我想出了如何解决我遇到的问题。这不是同一个问题,但它有一些建议给了我提示。</p>

<p>问题是由于我创建了从设置 ViewController 上的 <code>UITableViewCell</code> 到每个子 <code>UITableViewControllers</code> 的转场。</p>

<p>为了解决这个问题,我只是在设置 <code>UITableViewController</code> 和每个子 <code>UITableViewControllers</code> 之间创建了 segues。</p>

<p>希望有一天这对其他人有所帮助。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - UITableView 中缺少 UINavigationBar,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/38467219/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/38467219/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - UITableView 中缺少 UINavigationBar