菜鸟教程小白 发表于 2022-12-13 14:35:56

ios - 在 iOS 8 中显示 NSData 的 WKWebView loadData 替代方法(UIWebView 除外)


                                            <p><p>我想知道 <code>WKWebView</code> 的 <code>loadData</code>(仅限 iOS 9)功能是否有任何替代品,而不使用它的哥哥 <code>UIWebView</code>.</p>

<p>也许有一种方法可以使用 <code>loadHTMLString</code> 显示文档文件(xlsx、docx、pptx、pdf、图像),就像我在下面的代码中显示音频或视频文件一样。</p>

<p>它必须能够接受 <code>NSData</code>,因为文件在磁盘中始终是加密的,所以 <code>loadRequest</code> 是不可能的</p>

<p>下面是我查看文件的代码:</p>

<pre><code>if ( mimeType == kMimeTypeVideo || mimeType == kMimeTypeAudio ) {
    NSString *contentType = ;

    NSString *base64String = ;

    NSString *str = [NSString stringWithFormat:@&#34; \
                     &lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body style=\&#34;margin:0;width:100%%;height:100%%;\&#34;&gt;\
                     &lt;video controls height=\&#34;100%%\&#34; width=\&#34;100%%\&#34;&gt; \
                     &lt;source type=\&#34;%@\&#34; src=\&#34;data:%@;base64,%@\&#34;&gt; \
                     &lt;/video&gt;&lt;/body&gt;&lt;/html&gt;&#34;, contentType, contentType, base64String];

    resourceURL]];
} else {
    NSString *contentType = ;

    resourceURL]];
}
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>目前除了使用 <code>UIWebView</code> 之外没有其他方法。 </p>

<p>而且为了增加使用<code>WKWebView</code>的<code>loadData</code>功能的麻烦,它对它可以查看的文件的支持非常有限,比如它不能加载 doc/docx 和 ppt/pptx 文件。</p>

<p>总之,如果您想让 <code>WKWebView</code> 成为您的 <code>NSData</code> 转换文档的默认查看器,请不要使用它。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 在 iOS 8 中显示 NSData 的 WKWebView loadData 替代方法(UIWebView 除外),我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/35504175/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/35504175/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 在 iOS 8 中显示 NSData 的 WKWebView loadData 替代方法(UIWebView 除外)