菜鸟教程小白 发表于 2022-12-13 11:54:18

ios - 使用 xib 子类化 UICollectionViewController


                                            <p><p>我正在尝试创建一个自定义 <code>UICollectionViewController</code> 子类。</p>

<p>我使用 Xcode 的向导创建了它:</p>

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

<p>点击 <code>Finish</code> 后,我得到了这个 <code>.xib</code> 文件:</p>

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

<p>当我尝试从另一个类中调用它时:</p>

<pre><code>MyCollectionViewController *myCollectionViewController = ;

;

;
</code></pre>

<p>我收到此错误:</p>

<pre><code>UICollectionView must be initialized with a non-nil layout parameter
</code></pre>

<p>如果我使用:</p>

<pre><code>MyCollectionViewController *myCollectionViewController = [ initWithCollectionViewLayout:];
</code></pre>

<p>它不会崩溃,但有一些问题:</p>

<ol>
<li>如果 <code>.xib</code> 文件中已经存在 <code>CollectionViewLayout</code>,为什么还需要它?</li>
<li>我不想在 <code>MyCollectionViewController</code> 之外创建布局;在这种情况下,子类化的目的是什么?</li>
<li>整个 View 显示为空白。</li>
</ol></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>如果在 xib 中指定了 ViewController 的 UI,那么您必须通过调用 <code>[ initWithNibName:@"MyCollectionViewController"inBundle:]</code> (或者你得到你的 bundle )。当您使用此构造函数时, ViewController 的导出会正确连接,并且布局是根据 xib 中的内容设置的。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 使用 xib 子类化 UICollectionViewController,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/33921256/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/33921256/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 使用 xib 子类化 UICollectionViewController