1

UIWebViewに少し問題があります。Interface BuilderでUIWebViewを作成し、tasksWebViewとしてアウトレットを作成しました。また、デリゲートとしてViewControllerにリンクしました。http://www.taskyo.comをロードしたいのですが、ロードしようとすると白いページが表示されます。Mobile Safariでは問題なく動作するので、何が問題なのか混乱しています。さらに複雑にするために、http://www.taskyo.comをhttp://www.google.com置き換えると、正常に機能します。Google経由でhttp://www.taskyo.comにアクセスしようとすると、URLをクリックすると白いページが表示されます。私のコードは以下の通りです:

ヘッダーファイル

#import <UIKit/UIKit.h>

@interface AppThirdViewController : UIViewController

@property (weak, nonatomic) IBOutlet UIWebView *tasksWebView;

- (IBAction)goBack:(id)sender;
- (IBAction)goHome:(id)sender;

@end

実装ファイル

#import "AppThirdViewController.h"

@interface AppThirdViewController ()

@end

@implementation AppThirdViewController
@synthesize tasksWebView = _tasksWebView;

- (void)viewDidLoad
{
    [super viewDidLoad];
    [self goHome:self];
}

- (void)viewDidUnload
{
    [super viewDidUnload];
    _tasksWebView = nil;
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

- (IBAction)goBack:(id)sender
{
    [_tasksWebView goBack];
}

- (IBAction)goHome:(id)sender
{
    NSURL *tasksURL = [NSURL URLWithString:@"http:/www.taskyo.com/"];
    NSURLRequest *tasksRequest = [NSURLRequest requestWithURL:tasksURL];
    [_tasksWebView loadRequest:tasksRequest];
}

- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
{
    NSLog(@"Error : %@",error);
}

- (void)webViewDidStartLoad:(UIWebView *)webView
{
    NSLog(@"Started to load!");
}

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
    NSLog(@"Finished loading!");
}

@end

私のコンソールでは、次の出力が得られます。

Started to load
Finished loading!

誰かが問題について何か考えを持っていますか?前もって感謝します。

編集:修正済み-以下の私の答えを参照してください。

4

4 に答える 4

1

この回答を書いている時点では、Taskyo.com は利用できません。(私の Web ブラウザでさえ、あなたが提供したリンクを開くことができません)。

于 2012-06-07T13:35:32.700 に答える
0

1つの可能性は、サイトに無効なJavaScriptまたはHTMLがあることです。Mobile Safariは、アプリとまったく同じバージョンのライブラリを使用していない可能性があります。たとえば、W3Cバリデーターは、ページに関するいくつかの問題を表示します。エラーの検証

最初に試す必要があるのは、Webページを単純な「HelloWorld」メッセージにストリップしてから、コンテンツを追加し直して、問題がどこにあるかを確認することです。古いリビジョンから古くてキャッシュされたHTMLを取得している可能性もあります。現在のファイルを確実に取得するために、値をインクリメントする「?rand=2」パラメーターを追加するのが好きです。

于 2012-06-07T14:09:30.130 に答える
0

さらにテストを行った結果、コードに問題はなく、実際のアプリバンドル自体に問題があることに気付きました。シミュレーターからアンインストールして再構築しましたが、動作しています。ご協力ありがとうございます!

于 2012-06-07T19:13:37.403 に答える
0

taskyo.com は新しいドメインですか? おそらく、一部のネームサーバーはまだそれを認識していません。(モバイル Safari でページを開くことができる理由は説明できません)。

于 2012-06-07T13:50:57.717 に答える