2011-04-24 11 views
3

UIWebViewを含むアプリケーションを作成します。最初にURLをロードするだけで試してみたかったのです。UIWebViewの読み込み中にウェブサイトが表示されない(XCode 4、iOS SDK 4.3)

  • Interface BuilderでのUIWebViewを作成し
  • コードにフックアップ

    @property(nonatomic,retain) IBOutlet UIWebView *webView;

のviewDidLoad:

- (void)viewDidLoad { 
[super viewDidLoad]; 
if(!webView) 
{ 
    webView = [[UIWebView alloc]init]; 
} 

webView.delegate = self; 

[webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com"]]]; } 

私はdidFailLoadWithErrorとを実装しwebV iewDidFinishLoadデリゲートメソッド。 webViewDidFinishLoadが呼び出され、HTMLがロードされたことを示します。

問題:webViewDidFinishLoadが呼び出されても、UIWebViewはWebサイトを表示しません。それは白い色しか表示していません。右と下のスクロールバーは、UIWebViewに触れてドラッグしたときに表示されますが、コンテンツは表示されません。どこにも何も見つかりませんでした。

Connections

答えて

2

私はそれが..私は次のようにのsynthesizeを使用しました:

@synthesize webView = _webView; 

をだから、次の方法でのUIWebViewをコールする必要がありました:

[self.webView loadRequest:...]; 

新れ、この命名規則になぜ私は自己の必要性に慣れていないのですか

5

あなたが正しくInterface Builderですべてのものをフックアップした場合、次の行が必要とすべきではない:

このスクリーンショットは、XIBの接続を示し

EDIT ...かなり奇妙なよう

if(!webView) 
{ 
    webView = [[UIWebView alloc]init]; 
} 

webView.delegate = self; 

何が起こるかを確認してください。また、NSLog(...)webView:didFailLoadWithError:コールバックに入れ、出力されているかどうか確認してください。

+0

ありがとうございます。それをしましたが、動作しませんでした。私もそれは必要ではないと思ったが、私はすべてを試してみたかった。 viewDidLoadをデバッグすると、WebViewが0x0で割り当てられていることがわかりました。それは間違いかもしれません。しかし、割り当てられていないインスタンスにloadRequestを送信するときにクラッシュすべきではありませんか? (それはクラッシュしません) – cmart

+0

また、私は割り当てていないとコード内のUIWebViewを初期化する、デリゲートメソッドは呼び出されません..つまり、本当に割り当てられていないとinitedされていることを意味ですか? – cmart

+0

私の質問を下のスクリーンショットで更新しました – cmart

0

File's Ownerがあなたが宣言したwebViewに接続していることを確認しましたか?

さらに、webViewDidFinishLoadはHTMLがロードされたことを意味しません! コンテンツの読み込みに成功した場合は、このメソッドが呼び出されます。

+0

ありがとう、それは私が意味したthats。この場合、それはHTMLです;)ええ、接続はうまくいくようです – cmart

+0

私の質問を下部のスクリーンショットで更新しました – cmart

+0

applicationdidFinishLaunchingWithOptions:を確認できましたか? – rsheng

関連する問題