2010-08-17 24 views
0

我是一名新iPhone程序員。在iPhone程序中搜索URL

我正在製作一個基於Web的應用程序。我正在將用戶輸入的URL輸入到文本框中。當按下按鈕時,他們將轉到網址。

現在,當用戶輸入網址如http://www.google.com,那麼它工作正常 問題是,當用戶只輸入google.com或www.google.com它不起作用。

我不明白如何解決這個問題。

如果我添加'http://'有問題,我仍然有問題,因爲如果用戶寫入整個網址,它將會失敗。

這裏是我的按鈕單擊代碼:

- (IBAction爲)去 { 的NSMutableString *海峽;

str = [NSMutableString stringWithFormat:@"http://www.%@",name.text];  
    [webview loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:str]]]; 

}

這裏名稱是一個文本字段和Webview是web視圖的對象。除了網絡地址行爲,它工作正常。

請幫助....

回答

0

試試這個.....

- (IBAction爲)去 {

NSMutableString *str =[[NSMutableString alloc]initWithString:name.text]; 

if(![str hasPrefix:@"http://www."]) 
{ 
    if([str hasPrefix:@"www."]) 
      [str insertString: @"http://" atIndex: 0]; 
    else 
      [str insertString: @"http://www." atIndex: 0]; 

} 
if(![str hasSuffix:@".com"]) 
{ 
    [str appendString:@".com"]; 
} 
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:str]]]; 
[str release]; 

}

這將檢查的 「http://」, 「WWW」。並且如果用戶沒有輸入任何一個,也可以處理「.com」和句柄.... 這將確實可行TRY IT ......

+0

我已經這樣做了,但這是更簡單的方法提供........謝謝.... – Saawan 2010-09-10 05:49:53

0

您正試圖創建應用程序的網絡瀏覽器?

反正..一個複雜的for循環檢查你的字符串的前7個字符是'http://'還是前3個是'www'。等等..應該這樣做.. 但你會嘗試多少箱? 我的意思是有人可能想用'https'打開一個安全的鏈接,你的代碼可能在它之前附加另一個http:// ..所以確保在最終確定這種方法之前你已經想到了所有的測試用例...