2011-05-29 90 views
1

我有一個文本框,我可以輸入一個網址。問題是如果我只在前面輸入'cnn.com'或任何沒有'http://'的網站,頁面不會加載。有沒有辦法來解決這個問題?nsurl不加載網站,如果http或https不包括

我搜索了蘋果文檔,但找不到我正在尋找的幫助。

我的代碼:

NSString *zzz = URLbox.text; 

NSURL *url = [NSURL URLWithString:zzz]; 
[webBrowser loadRequest:[NSURLRequest requestWithURL:url]]; 

回答

14

檢查輸入URL(URLbox.text)與任http://https://開始,如果沒有,用http://前綴它。

+1

謝謝你們!得到它的工作:'NSString * myURLString = URLbox.text; NSURL * myURL; if([myURLString hasPrefix:@「http://」]){ myURL = [NSURL URLWithString:myURLString];其他{ NSString * rer = [NSString stringWithFormat:@「http://%@」,myURLString]; myURL = [NSURL URLWithString:rer]; rer = URLbox.text ;; NSLog(@「updated textbox」); }' – BlockReader 2011-05-29 15:21:38

4

URL包含一個方案,除非它作爲文檔的一部分是相對的。 cnn.comhttp://cnn.comhttp://www.cnn.com的臨時縮寫。在提交請求之前,瀏覽器通常會自動將http://添加到您在地址欄中鍵入的內容。

你應該檢查用戶的字符串是否以一個方案開始(不一定只是http://https://,但在你的用例中可能就足夠了),並且如果它缺少,則默認添加一個。