2011-12-03 16 views
1

HTMLファイルをアプリケーション(xcode)にロードするにはどうすればよいですか?私は次のコードを使用しています:どのようにしてHTMLファイルを読み込むことができますか?

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    [webView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"]isDirectory:NO]]]; 
} 

私はアプリを起動すると、私は白いページが表示されます。どうしましたか?

.hファイル:

#import <UIKit/UIKit.h> 

@interface poules : UIViewController { 
    IBOutlet UIWebView *webView; 
} 
@property (nonatomic,retain) UIWebView *webView; 
@end 
+0

コードが右に見えます、アプリケーション出力ウィンドウにデバッグメッセージがありますか? IB経由でUIに接続されたwebViewオブジェクトですか? –

答えて

3

私のプロジェクトの実例です。私のindex.htmlファイルは、resourcesディレクトリのDocumentation/htmlというフォルダにあります。 webViewでそれをロードするために、その後

enter image description here

:これらは「フォルダ参照」ではなく、グループ(したがって、青いアイコン)であることに注意するために、その重要

NSString *resourceDir = [[NSBundle mainBundle] resourcePath]; 
NSArray *pathComponents = [NSArray arrayWithObjects:resourceDir, @"Documentation", @"html", @"index.html", nil]; 
NSURL *indexUrl = [NSURL fileURLWithPathComponents:pathComponents]; 
NSURLRequest *req = [NSURLRequest requestWithURL:indexUrl]; 
[webView loadRequest:req]; 
0

トライloadHTMLString:ベースURL:あなたのWebViewが接続されているかどうかチェックすることができる方法

NSString *html=[NSString stringWithContentsOfFile:your_html_path encoding:NSUTF8StringEncoding error:nil]; 

    [webview loadHTMLString:html baseURL:baseURL]; 
0

最初のもの。

この場合、コードを分解して、ロードしようとしているリクエストの何が間違っているかを確認できます。

1.このようなファイルパスのNSStringを作成し、パスが返されるかどうかを確認します。

NSString *urlString = [[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"]; 

2 ..このような上記の文字列からNSURLを作成し、URLが正しいかnilであるかどうかを確認します。

NSURL *url = [NSURL URLFromString:urlString]; 

3 ...そして、要求を作成します。

NSURLRequest *request = [NSURLRequest requestFromURL:url]; 
関連する問題