iOS - NSConcreteData 崩溃
<p><p>我有一个 <code>UIButton</code> 链接到一些调用 <code>UIPrintInteractionController</code> 以打印 PDF 文档的代码。</p>
<p>如果我点击按钮,会弹出 View 让我选择打印机,然后打印文档。但是,如果我在 View 外点击以关闭弹出窗口,然后<em>快速</em>再次点击“打印”按钮,我会遇到以下崩溃:</p>
<pre><code>: message sent to deallocated instance 0xa4696d0
</code></pre>
<p>我在启用 NSZombies 的情况下进行了调试,崩溃发生在这一行:</p>
<pre><code>printController.printingItem = dataToPrint;
</code></pre>
<p><code>dataToPrint</code> 以相同的方法实例化,但在此 <code>printController</code> 行之前:</p>
<pre><code>NSData *dataToPrint = ;
</code></pre>
<p>这种崩溃只有在我快速点击时才会发生,如果我稍等一下,一切都会顺利。</p>
<p>有人知道这可能是什么吗?</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>使“dataToPrint”成为一个强大的 ivar,只有在您 100% 确定它不会再次使用时才将其设为 nil。 'printController.printingItem' 很可能会保留它,但是当您关闭弹出窗口时,它会在再次点击“打印”按钮之前被释放。</p></p>
<p style="font-size: 20px;">关于iOS - NSConcreteData 崩溃,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/12673232/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/12673232/
</a>
</p>
页:
[1]