2013-03-27 2 views
4

Я знаю HTML, javascript, CSS ... но я хотел создать собственное/гибридное приложение для iPhone с использованием HTML5, но без использования чего-то вроде PhoneGap или Nimblekit. Я никогда раньше не писал настоящую (а не веб-приложение) приложение для iPhone, поэтому я ничего не знаю о Xcode. Я уже сделал UIWebView с учебником, который я нашел, но он отображает веб-сайт (apple.com). Как я могу сделать это отображение локального файла (index.html)?Xcode UIWebView локальный HTML

Мой код в ViewController.m под (ничтожной) viewDidLoad:

[super viewDidLoad]; 
    NSString *fullURL = @"html/index.html"; 
    NSURL *url = [NSURL URLWithString:fullURL]; 
    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; 
    [_viewWeb loadRequest:requestObj]; 

ответ

14

У вас есть 2 варианта:

Вставить HTML прямо здесь:

Загрузите 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]]; 
+0

Спасибо за ответ, но это действительно так, как в первый раз, когда я что-то делаю в Xcode. Не могли бы вы рассказать мне, что я должен заменить ТОЧНО для второго? :) – eds1999

+0

Я отредактировал свой ответ. Посмотрите на последнюю часть. –

+0

Thnk вам так много :) – eds1999

0

вы можете загрузить локальный файл HTML из вашего комплекта проекта следующим образом

NSURLRequest *requestObj = [NSURLRequest requestWithURL:[[NSBundle mainBundle] URLForResource:@"index" withExtension:@"html"]]; 
[myweb loadRequest:requestObj]; 
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) 
} 
Смежные вопросы