3

我能够成功地从 ALAssetsLibrary 中查找图像并在本机视图中使用 UIImage。

是否可以在 UIWevView 中使用相同资产的 url(例如assets-library://asset/asset.JPG?id=88AA03C4-E53F-4FE2-9752-9DA675D1FAF7&ext=JPG:)作为 img 标签的来源?

<img src="<the asset>">

4

1 回答 1

3

您不能从 UIWebView 使用此 URL,因为 URL 方案 assets-library:// 只有 AVFoundation(AVAsset) 和 AssetsLibrary 中的类才能理解。要在 UIWebView 中显示 AssetsLibrary 中的图像,应该使用以下两种方法:

1) 在您的应用程序中实现一个小型网络服务器,让它为 AssetsLibrary 中的图像提供服务。因此,在您的 UIWebView 中,您将像这样引用这些图像。然后,网络服务器将生成一个动态响应,从 AssetsLibrary 为具有指定 ID 的资产返回图像数据。

2)另一种方法是完全在您的可可代码中生成网页,然后使用该loadHTMLString:baseURL:方法设置 UIWebView 的内容。在生成的 HTML 代码中,您可以将 assets-library 中的图像嵌入为 Base64-Images/Data-URIs(请参阅此处以获取更多参考:Embedding Base64 Images

哪种方法最适合您取决于具体情况。

于 2012-10-14T11:55:30.047 回答