菜鸟教程小白 发表于 2022-12-12 21:40:16

ios - 从 UITableView 中分离后,如何根据不同的数据加载不同的 UIView?


                                            <p><p>我有一个从数据库文件加载数据的 <code>UITableView</code>。它有不同的部分。我设法以编程方式设计了一个自定义 <code>UITableViewCell</code>。当我触摸一个单元格时,我会转到 <code>UIViewController</code>。 segue 是从 Interface Builder 添加的。现在,我需要根据 <code>UITableView 的节号在新的 <code>UIViewController</code> 中加载不同的内容(即 <code>UILabel</code>、<code>UIButton</code>) </code>。为了更形象化,我在下面添加了图片。</p>

<p>如何做到这一点?我应该为每个操作使用自定义 <code>UIViewController</code> 子类吗?或者有更简单的方法吗?</p>

<h1>第一个 View </h1>

<p> <a href="/image/pbiOH.png" rel="noreferrer noopener nofollow"><img src="/image/pbiOH.png" alt="view 1"/></a> </p>

<h1>第二个 View </h1>

<p> <a href="/image/KluWy.png" rel="noreferrer noopener nofollow"><img src="/image/KluWy.png" alt="view 2"/></a> </p>

<h1>第三个 View </h1>

<p> <a href="/image/LhKt0.png" rel="noreferrer noopener nofollow"><img src="/image/LhKt0.png" alt="view 3"/></a> </p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>在代码中,可以使用<code>prepareForSegue</code>方法,检查标识符,并传递下一个<code>UIViewController</code>相关数据。</p>

<p>如果每种单元格的界面不同,那么您应该为每种界面使用不同的<code>UIViewController</code>。所有这一切都可以通过 Storyboard 完成,方法是从每个原型(prototype)单元“按住 ctrl 拖动”到不同的 Controller 。</p>

<hr/>

<p>如果您不想为不同的数据使用不同的原型(prototype)单元格。 (这将使 Storyboard很容易做到这一点),然后通过 <code>UITableView 委托(delegate)</code> 的 <code>didSelectRowAtIndexPath</code> 方法中的代码调用 segue,而不是通过 Storyboard进行转场。像这样:</p>

<pre><code>override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    switch indexPath.section {
    case 0:
      performSegueWithIdentifier(&#34;some_segue_id&#34;, sender: self)
    case 1:
      performSegueWithIdentifier(&#34;another_segue_id&#34;, sender: self)
    default:
      print(&#34;not a known section&#34;)
    }
}
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 从 UITableView 中分离后,如何根据不同的数据加载不同的 UIView?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/38747588/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/38747588/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 从 UITableView 中分离后,如何根据不同的数据加载不同的 UIView?