HOME > 画像やメール共有・保存
画像やメール共有・保存:UIActivityViewController
アプリ内の画像やメールを簡単に第三者に共有できるActivityViewControllerを説明します。海外のサイトのゲーム[The Line]で遊んでいる際にSHAREボタンを押すと以下の様にメッセージやメールを表示する方法を調査しましたので共有いたします。

サンプル構文
//生成
let firstActivityItem = "I am a test message";//メッセージ
let secondActivityItem = UIImage(named:"swift-salaryman.png")!;//画像
let thirdActivityItem = NSURL(string:"http://swift-salaryman.com/")!;//メッセージの後に表示されるURL
//上記の要素を追加して表示します
let activityViewController : UIActivityViewController = UIActivityViewController(activityItems: [firstActivityItem,secondActivityItem,thirdActivityItem], applicationActivities: nil);
target.presentViewController(activityViewController, animated: true, completion: nil);
上記を実行すれば以下の様なメッセージを送信できます

ActivityViewUtil例文
ActivityViewUtil.swiftをダウンロードする。(ご自由にご利用ください)
import UIKit
struct ActivityViewUtil {
static func showPanel(target:UIViewController, activityItems:[AnyObject]){
let activityViewController : UIActivityViewController = UIActivityViewController(activityItems: activityItems, applicationActivities: nil);
target.presentViewController(activityViewController, animated: true, completion: nil);
}
}
//利用方法
let firstActivityItem = "I am a test message";//メッセージ
let secondActivityItem = UIImage(named:"swift-salaryman.png");//画像
let thirdActivityItem = NSURL(string:"http://swift-salaryman.com/");//メッセージの後に表示されるURL
ActivityViewUtil.showPanel(targetViewController, activityItems: [firstActivityItem,secondActivityItem,thirdActivityItem]);
↓こんな記事もありますよ!
![]() | NSNotificationCenterでコード間のイベントやりとりAppDelegateのイベント(アプリがアクティブ)になるタイミングでViewControllerに通知する為にはどうすればいいのか?と 調査しているとこのクラスにたどり着きました。delegateを利用せずにイベントの通知をViewController間で簡単に実装できるので 使いやすいです! |
![]() | NSThreadでスレッド処理を行うタイマー処理と同様に利用できるスレッドの処理です。NSTimerではヒゲがのびたサンプルでしたので眉毛の濃くなるサンプルにしてみます。ただ、どうやらThread処理は 推奨されておらず、dispatch_queueを使用するべきのようです。 |
![]() | UIImage中年サラリーマンが画像をローカルやURLやあんな所からアクセスして表示するサンプルを説明しております。 |
Tweet
![]() |
|||
|