1

私はObjective-CIの初心者です。ローカルのhtmlファイル(たとえばindex.html)をUIWebViewにロードする方法を知りたいのですが、次のようにURLをロードできます。

  -(void)viewWillAppear:(BOOL)animated
    {
        NSLog(@"willAppear");

        UIWebView *myWebView=[[UIWebView alloc]initWithFrame:CGRectMake(20, 20, 400, 400)];


        NSURL *url = [[NSURL alloc] initWithString:@"http://www.google.co.in/"];

        [myWebView loadRequest:[NSURLRequest requestWithURL:url]];
        myWebView.scalesPageToFit = YES;
        [self.view addSubview:myWebView];
    }

URLをロードする代わりにローカルのhtmlファイルをロードしたいのですが、どうすればよいですか?

また、デリゲートメソッドを呼び出したい

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request

NavigationType:(UIWebViewNavigationType)navigationTypeは呼び出されていません。ガイダンスは、きちんと評価されています。ありがとうございます。

4

1 に答える 1

10

まず、グーグルで検索する前にアップルのドキュメントを読んでください。基本的なObjectiveCプログラミングの概念を理解することをお勧めします。

UIWebViewを参照して、ローカルhtmlをロードする方法を説明します。

UIWebView *myWebView=[[UIWebView alloc]initWithFrame:CGRectMake(20, 20, 400, 400)];
NSString *indexPath = [NSBundle pathForResource:@"index" ofType:@"html" inDirectory:nil];
[myWebView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:indexPath]]];
[self.view addSubview:myWebView];

デリゲートメソッドを呼び出すには、最初にクラスにUIWebViewDelegateプロトコルを実装します。つまり、以下のようにインターフェイスの宣言に実装します…</ p>

@interface YourViewController : UIViewController<UIWebViewDelegate>

次に、Webビューを初期化した後、WebViewデリゲートをclass..ie。に設定します。

myWebView.delegate = self; 

それがうまくいくことを願っています…ハッピーコーディング:-)

于 2013-02-03T06:08:46.383 に答える