2012-07-22 41 views
1

我知道,這個問題已經問了很多次,但沒有幫助過我。所以我想在觸摸UITableView中的一行時觸發loadRequest。但由於某種原因,它不起作用。當[webView loadRequest:request];被稱爲,沒有任何反應。這裏是我的代碼:此代碼的UIWebView不調用loadRequest如果從t​​ableView調用:didSelectRowAtIndexPath:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
NSString *bookmarkString = [NSString stringWithFormat:@"%@", [bookmarks objectAtIndex:indexPath.row]]; 
NSURL *url = [NSURL URLWithString:bookmarkString]; 
NSURLRequest *request1 = [NSURLRequest requestWithURL:url]; 
[tableView deselectRowAtIndexPath:indexPath animated:YES]; 
[self dismissModalViewControllerAnimated:YES]; 
[myWebView1 loadRequest:request1]; 
urlField1.text = bookmarkString; 

}

我已經嘗試了許多不同的變化,但沒有任何工程。使用斷點調試後,所有內容都會被調用,但Web視圖上沒有任何事情發生。解除模態視圖控制器的工作,但不是loadRequest。誰能幫忙?

編輯:我用故事板

+0

你確定'myWebView1'不是零?例如,您可能已經忘記在IB中連接一個插座。 – DPlusV 2012-07-22 08:32:13

+0

一切工作,如果我從別的地方做的加載請求,如從UITextField。 – imas145 2012-07-22 09:21:18

回答

0

你應該儘量分配的UIWebView,然後撥打電話,即使你從廈門國際銀行與它

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
if(!myWebView1) 
{ 
    myWebView1 = [UIWebView alloc]init]; 
} 
     NSString *bookmarkString = [NSString stringWithFormat:@"%@", [bookmarks objectAtIndex:indexPath.row]]; 
     NSURL *url = [NSURL URLWithString:bookmarkString]; 
     NSURLRequest *request1 = [NSURLRequest requestWithURL:url]; 
     [tableView deselectRowAtIndexPath:indexPath animated:YES]; 
     [self dismissModalViewControllerAnimated:YES]; 
     [myWebView1 loadRequest:request1]; 
     urlField1.text = bookmarkString; 
    } 
+0

沒有效果......這很奇怪。它在其他地方工作,但不在這裏。我認爲我已經分配了所有的代表等。難道還有一些我可能已經忘記/我不知道的東西? – imas145 2012-07-22 10:19:57

+0

我認爲只是爲了測試自己,只用uiwebview打開一個新項目,看看上面的代碼是否工作。 – Janub 2012-07-22 14:14:17

+0

我可以得到它的工作,它已被稱爲viewDidLoad等或在UITextField上結束編輯。如果這有幫助,我的Storyboard文件中的兩個「實際」視圖控制器上有相同的視圖控制器(GBViewController)。在動作中,我加載另一個GBViewController視圖作爲表格視圖控制器 – imas145 2012-07-22 17:51:03

相關問題