从本地HTML Xcode

时间:2016-07-15 08:01:27

标签: html ios objective-c

上下文:用Obj-C编写的iOS App。

我正在尝试加载附加了本地图像的本地HTML文件。

HTML文件存储在名为pages的目录中。图像存储在称为图像的目录中。这是项目中的文件夹结构:

/
- /图像
- /页
其他文件

“我的项目”和“图像”目录都列在我的项目中,并在我的项目的构建阶段中的复制包资源下。当我在那里右击它们时,我可以在Finder中显示它们并查看所有单独的.html和.jpg文件。

我的代码存在一些问题,主要是,即使加载html页面,图像 - 通过img标签链接 - 也不是。

我试过了

这是加载没有图像的HTML页面的代码(我几乎可以肯定这个特定的代码过去曾经用过):

// Linkpath is the path to the HTML file
NSData *htmlData = [NSData dataWithContentsOfFile:linkPath];
if (htmlData) {
    [webWiki loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:linkPath]]];
}

这是一个示例HTML页面: http://pastebin.com/b1KTZS6A

以下是我已经尝试过的一些解决方案:

One

NSString *path = [[NSBundle mainBundle] bundlePath];
NSURL *baseURL = [NSURL fileURLWithPath:path];

NSString* newStr = [[NSString alloc] initWithData:htmlData encoding:NSUTF8StringEncoding];
[webWiki loadHTMLString:newStr baseURL:baseURL];

Two

1 个答案:

答案 0 :(得分:0)

我猜您的问题与XCode中的文件夹类型有关。以下是有关文件夹类型https://developer.apple.com/library/ios/recipes/xcode_help-structure_navigator/articles/Adding_an_Existing_File_or_Folder.html

的文档说明

所以问题是在Xcode中有两种类型的文件夹:组和文件夹引用。这些组是黄色的,文件夹引用是蓝色的。对于本地HTML,您必须使用“文件夹引用”将其结构保留在实际的文件系统上。因此,您的图片链接不会被破坏。

XCode

HTML content

我希望这会有所帮助。