2011-02-01 52 views
2

這可能嗎?用按鈕和文本字段/視圖(iPhone)打開電話(呼叫)

該應用程序將有一個按鈕和一個文本字段或文本視圖。

用戶在文本字段或文本視圖中鍵入電話號碼。當用戶完成時,用戶按下將打開電話按鈕的按鈕並將該呼叫撥打該號碼。

我該怎麼做?如果可能的話請提供一些代碼! :)

預先感謝您!

回答

11

看看這個代碼,這應該很好!

-(IBAction)newuser:(id)sender; 
{ 
    NSString *URLString = [@"tel://" stringByAppendingString:textfield.text]; 

    NSURL *URL = [NSURL URLWithString:URLString]; 

    [[UIApplication sharedApplication] openURL:URL]; 
} 
2

您可以將電話號碼格式化爲tel:// URL。所以,如果你有一個文本字段(MyTextField我們的目的在這裏):

NSString *URLString = [@"tel://" stringByAppendingString:MyTextField.text]; 

NSURL *URL = [NSURL URLWithString:URLString]; 

[[UIApplication sharedApplication] openURL:URL]; 
+1

注意,RFC規定電話網址開頭`電話:`和`沒有聯繫電話://` – HairOfTheDog 2013-03-27 04:47:08

+0

在你的代碼的URL的第二行是零,當我們分配到urlstring URL。 Plz幫助NSURL * URL = [NSURL URLWithString:URLString];結果是零 – 2017-03-02 08:08:41

2

的iPhone支持tel:URI方案,由RFC 3966定義。因此,一個簡單的例子,將要求該手機撥打電話號碼「12345」將是:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel:12345"]]; 

這應該導致設備切換到正常的手機應用程序,並撥打該號碼。您需要驗證文本字段以檢查非法條目;該規範實際上允許有不少字符(請參閱第5頁上的正式語法),但作爲第一個測試,您可能希望刪除不是數字的任何內容。

+1

注意,RFC聲明電話URL以`tel:`開頭,而不是`tel://` – HairOfTheDog 2013-03-27 04:47:55