en

hi, it seems you are using microsoft internet explorer. it doesn't match web standard and causes problems browsing this site. please please please use mozilla firefox or google chrome instead. thank you!

zh

哦哦!您正在使用Internet Explorer 瀏覽器,它與我們的網頁標準並不相容,可能會導致畫面顯示不正常。
請改用 Mozilla Firefox 或者 Google Chrome 才能正常瀏覽本網站,謝謝!

1.21.2011

使用 UIApplication 呼叫 iOS 內建電子郵件 App

 

如果你使用模擬器 Simulator 進行編譯與執行,在點擊按鈕時並不會出現電子郵件的應用程式,因為 Simulator 並沒有內建電子郵件應用程式,如要測試此功能請在 Device 模式下,其程式碼如下。

首先,先新增一個按鈕事件,並在事件內建入以下程式碼。

//設定主旨
NSString *subject = @"Never Stop Bruning";

//設定內文
NSString *text = @"Come on!! Show me more iOS demo!!";

//設定收件人的Email並帶入主旨與內文
NSString *url = [NSString stringWithFormat:@"mailto://FurnaceDigital@gmail.com?subject=%@&body=%@", subject, text];

//重新格式化字串為UTF8
url = [url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]];

如果主旨或是內文部份想保留空白,可以在設定收件人 Email 時不要帶入這兩項資訊,或是使用以下程式碼。

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mailto://FurnaceDigital@gmail.com"]];





4 則留言:

  1. 匿名6/01/2012

    請問我在官網下載 "MailComposer" Sample code
    顯示出來都是英文的,可是您卻是中文的,如何做到呢?

    回覆刪除
    回覆
    1. 您好:

      在設定方面我這邊也沒有特別作處理,我想介面上的差異還是在於 Device 的語系上,你可以參考以下這一篇文章最後面的做法試試看,
      http://furnacedigital.blogspot.tw/2011/12/uiimagepickercontroller-camera.html

      像是「取消」和「傳送」這類 SDK 已經有定義好的按鈕,多半都會有語系的問題存在,除程式碼中的語系,也請別忘記您 Device 上的語系設定,希望有幫到你^^

      刪除
    2. 匿名6/01/2012

      感謝您,受益良多,已經成功可以使用中文了!感激不盡唷^^

      刪除
    3. 恭喜你,呵呵!

      刪除