菜鸟教程小白 发表于 2022-12-12 10:14:11

ios - addChildViewController 给出 NSException 错误?


                                            <p><p>我不熟悉使用这种方法,所以我可能完全错误,所以这是我的代码:</p>

<pre><code>@property (nonatomic, weak) ConverterViewController *converterViewController;
@property (nonatomic, weak) CalculatorViewController *calculatorViewController;
</code></pre>

<p>如果我正确理解了这段代码,这些代码就是对两个不同 ViewController 的引用。</p>

<p>然后我的 viewDidAppear 方法中有这个:</p>

<pre><code>;
;
;
</code></pre>

<p>当我尝试将其添加为 subviewController 时,我在第一行得到一个 NSException。所以不知道这是否应该在我的 ConverterViewController 类中调用一些方法,我在该类中放置了一些断点 initWithNibName 和 viewDidLoad 方法,我发现这些方法都没有被调用,所以我不完全确定出了什么问题。再说一次,我不太确定会出现什么问题,因此非常感谢任何帮助。</p>

<p>这就是我从控制台得到的全部信息:</p>

<pre><code>libc++abi.dylib: terminating with uncaught exception of type NSException
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p><strong>更新答案:</strong></p>

<p><code>;</code> 不会创建 <code>converterViewController</code>。<br/>
它只需要 <code>converterViewController</code> 对象并将其作为 <code>childViewController</code> 添加到 <code>self</code>。</p>

<p>您需要在 <code>-addChildViewController:</code> 之前分配内存并实例化对象 <code>converterViewController</code> 否则它的值将是 <code>nil</code> 并且什么都不会发生.</p>

<p>所以...这样的事情:</p>

<pre><code>_converterViewController = [ initWithNibName:@&#34;ConverterViewController&#34;
                                                                     bundle:nil];

//now... adding it as childViewController should work
;
;
//optional: give it a frame explicitly so you may arrange more childViewControllers
//;
;
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - addChildViewController 给出 NSException 错误?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/23982965/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/23982965/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - addChildViewController 给出 NSException 错误?