0

viewDidLoad で UIWebView に URL をロードしています。

- (void)viewDidLoad
{
   [super viewDidLoad];
   [webView loadRequest:[NSURLRequest requestWithURL:[NSURL      
   URLWithString:@"http://abc.com/Test.html"]]];
}

次に、NSTimer で次のように実行して JavaScript を実行します。JavaScript の呼び出しはうまく機能します。

-(void)WebViewLoad:(NSTimer *)theTimer
{

    NSString *abcFiles  = [webView stringByEvaluatingJavaScriptFromString:@"abc.length"];
    NSLog(@"The TotalNumberOfFiles is %i",abcFiles); //This works
//--------------------------------------------------------
    NSString *currentURL = webView.request.URL.absoluteString;
    NSLog(@"Current url 1 is %@",currentURL);

   [webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://abc.com/newpage.html"]]];
   [self.view addSubview:webView];


   NSString *currentURL2 = webView.request.URL.absoluteString;
   NSLog(@"Current url 2 is %@",currentURL2);
}

コメント行より上のすべてが機能します。しかし、新しい URL が追加された部分は、まだ初期 URL を取得しています。リロードを追加してみました。それは動かなかった。新しい UIWebView オブジェクトを作成しようとしましたが、これも機能しませんでした。

結果は

Current url 1 is http: //abc.com/Test.html 
Current url 2 is http: //abc.com/Test.html

私が欲しい

Current url 1 is http: //abc.com/Test.html
Current url 2 is http: //abc.com/newpage.html

もう 1 つの質問は、「コードから新しい URL をロードできますか。ボタンやアクションを介してではなく、定期的なタイマーから来ています。それは問題ですか?」というものです。

4

1 に答える 1