2011-02-25 86 views
0

我們的應用程序從我們的網站加載個人資料頁面內部的應用程序。它們已經針對iPhone css進行了優化,但它們仍然是一個html頁面。我們的mailto鏈接沒有按預期工作。 單擊時,沒有任何反應。但是,點擊並按住(點按並按住)時,菜單向上滑動,顯示「新消息」,「創建新聯繫人」,「複製」等。從內置應用程序的網頁在iPhone上打開Mail.app

該如何格式化以獲取Mail.app自動啓動?

<a class="action_bubble" target="_blank" rel="external" href="mailto:[email protected]">Send Email</a> 

「呼叫」鏈接按預期工作。

<a class="action_bubble" href="tel:1234567890">Call</a> 

所以,不知道該怎麼用這個做...

回答

1

這裏是一個project on GitHub能夠解決您的問題。基本上,當您使用UIWebView控制器時,您需要決定如何使用UIWebView的委託處理程序來管理鏈接。在界面生成器中,您可以讓它自動識別電話號碼,這可能是您電話號碼工作的原因,並且它會將http鏈接識別爲默認行爲。但是,mailto和其他一些特殊的href選項將需要手動處理。

1

確保爲您的UIWebView設置了「檢測」屬性,如「電話」,「地址」。你可以從你的IB設置它。

或從代碼

self.webView.dataDetectorTypes = UIDataDetectorTypeAll;

+0

的項目(地址,事件,鏈接) e沒有檢查,所以我檢查了它們,然後在設備上進行了重建和測試,沒有任何改變。電話鏈接工作,其他人不工作。好吧,無論如何,地圖鏈接都會在應用程序內部拉出地圖,而不是在地圖應用程序中,並且電子郵件會向上滑動一個面板,如果您按住足夠長的時間... – hogsolo 2011-03-03 22:48:51

0

難道是你剛剛在模擬器中試過?模擬器沒有郵件應用程序,所以無法打開。嘗試在設備上。我認爲你的代碼確實有效。

我剛剛在設備上測試過:您的代碼有效。

+0

另一個團隊成員正在處理開發的應用程序,我只是使它所調用的網頁。看起來我要去gt開發許可證,並開始製作iPhone應用程序... – hogsolo 2011-02-26 01:08:38

+0

您的代碼正在工作:它是模擬器。在設備上測試,它會工作。 – 2011-02-28 12:23:18

+0

我沒有在模擬器上,我在手機上的應用程序...但很高興知道這不是我的代碼。 – hogsolo 2011-03-01 19:29:16

0

有點遲到了,但我發現了以下工作:

  1. 的iOS有一些奇怪的方法來處理網頁內容
  2. ,但請不要在標記中封裝了您的電子郵件地址,只是把它放在那裏爲純文本
  3. 確保在你的故事板(如果使用一個)web視圖具有性能檢查地址,你就大功告成了...這同樣適用於電話號碼
相關問題