我知道HTML,javascript,CSS ...但我想使用HTML5制作原生/混合iPhone应用,但不使用像PhoneGap或Nimblekit这样的东西。 我之前从未写过真正的(不是网络应用程序)iPhone应用程序,因此我对Xcode一无所知。 我已经用我发现的教程创建了一个UIWebView,但它显示了一个网站(apple.com)。 如何将此显示设置为本地文件(index.html)?
我在ViewController.m中的代码(void)viewDidLoad:
[super viewDidLoad];
NSString *fullURL = @"html/index.html";
NSURL *url = [NSURL URLWithString:fullURL];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[_viewWeb loadRequest:requestObj];
答案 0 :(得分:14)
您有两个选择:
直接插入HTML:
UIWebView *wv = [[UIWebView alloc] init];
[wv loadHTMLString:@"<html><body>YOUR-TEXT-HERE</body></html>" baseURL:nil];
加载项目中存在的html文件:
UIWebView *wv = [[UIWebView alloc] init];
NSURL *htmlFile = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"test" ofType:@"html"] isDirectory:NO];
[wv loadRequest:[NSURLRequest requestWithURL:htmlFile]];
如果您希望您的示例有效,请将您发送的代码替换为:
[super viewDidLoad];
NSURL *htmlFile = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"]];
[_viewWeb loadRequest:[NSURLRequest requestWithURL:htmlFile]];
答案 1 :(得分:1)
对于Swift 3:
@IBOutlet var webView: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()
let URL = Bundle.main.url(forResource: "file name", withExtension: "html")
let request = NSURLRequest(url: URL! as URL)
webView.loadRequest(request as URLRequest)
}
答案 2 :(得分:0)
您可以从项目包中加载本地html文件,如下所示
NSURLRequest *requestObj = [NSURLRequest requestWithURL:[[NSBundle mainBundle] URLForResource:@"index" withExtension:@"html"]];
[myweb loadRequest:requestObj];