iOS Swift 在 WebView 中显示 Xcassets 图像

标签 ios swift image webview

当图像位于 Assets.xcassets 文件夹中时,我不知道如何在 WebView 中显示图像“HappyFace.png”。

相反,我不得不将图像存储在与 Assets.xcassets 文件和其他 dot swift 文件相同的位置(相同级别)。只要我将它存储在那里,我就可以通过名称引用它:

let htmlString: NSString = "<html><body><img src='HappyFace.png'/></body></html>"
let path: NSString = NSBundle.mainBundle().bundlePath
let baseURL: NSURL = NSURL(fileURLWithPath: path as String)
MyWebView.loadHTMLString(htmlString as String, baseURL: baseURL)

有谁知道如何访问 xcassets 中的图像?将我的图像存储在那里是否合适? (它不是应用程序图标,也不是加载屏幕图像,也许它不属于 xcassets?)。

Snapshot of My File Hierarchy

最佳答案

没有简单的方法可以做到这一点。您必须将图像存储在 XCAssets 之外并像您所做的那样引用它们,或者将 XCAssets 解压到本地目录中。

This question包括一个有用的摘要,一个答案演示了如何使用自定义 URL 协议(protocol)实现这一点。

关于iOS Swift 在 WebView 中显示 Xcassets 图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35755209/

相关文章:

ios - 如何在文本字段中输入值后显示*

python - img = Image.open(fp) 属性错误 : class Image has no attribute 'open'

java - 转发新 session 时出错找不到: Capabilities [{iPhone=Safari, browserName=Safari, deviceVersion=10.3.1, platformName=iOS}]

ios - 如何在 Xamarin,IOS 中使用 SDWebImage 绑定(bind)

json - 无法将 API-Response 转换为 JSON,但可以将其打印为字符串

ios - 在点击时使用 CGAffineTransform Scale 为 TableView 单元格设置动画,并在 tableView 滚动时删除动画

JAVA - 如何从 GIF 获取动画图像

image - 使用/CCITTFaxDecode过滤器从PDF中提取图像

ios - 在 textViewDidChange 中设置 UITextView Frame 时 contentOffset 发生变化

ios - 在 iOS 中将 pdf 转换为 png 会导致外观质量大幅降低