活動ビュー
アクティビティ (活動) ビュー (共有シート とも呼ばれます) は、人々が現在のコンテキストで実行できるさまざまなタスクを示します。
活動ビューには、頻繁に使用するアプリへの素早いアクセスに加えて、メッセージやコピーや印刷などのアクションなどの共有活動が表示されます。人々は通常、ページや文書を表示している間、またはアイテムを選択した後にアクションボタンを選択して、共有シートを表示します。活動ビューは、デバイスと向きに応じて、シートまたはポップオーバーとして表示できます。
あなたのアプリやゲーム内で人々が共有シートを開いたときに、共有シートに表示できるアプリ固有の活動を提供できます。たとえば、写真 には、写真のコピー、アルバムへの追加、位置の調整などのアプリ固有のアクションが用意されています。デフォルトでは、システムは、複数のアプリまたはシステム全体で利用可能なアクション (ファイルへの追加や AirPlay など) の前に、アプリ固有のアクションを一覧表示します。人々は、アクションのリストを編集して、最も頻繁に使用するものを表示したり、新しいものを追加したりできます。
アプリの拡張機能を作成して、他のアプリで使用できるカスタムの共有およびアクション活動を提供することもできます。(アプリ拡張機能 は、人々がアプリの外部でインストールして使用できるように提供するコードです。) たとえば、特定のソーシャルメディアサービスと Web ページを共有するために人々がインストールできるカスタム共有活動を作成できます。macOS には活動ビューがありませんが、Mac で人々が使用できる共有およびアクションアプリの拡張機能を作成できます。ガイダンスについては、共有と活動の拡張機能 を参照してください。
ベストプラクティス
活動ビューで既に使用可能な共通アクションの重複バージョンを作成しないようにします。 たとえば、重複した Print アクションを提供することは不必要であり、システムが提供するアクションと区別する方法を人々は知らないため、混乱を招きます。既存のアクションに似たアプリ固有の機能を提供する必要がある場合は、カスタムタイトルを付けます。たとえば、カスタム書式設定を有効にして銀行取引を印刷する場合は、"取引の印刷" など、印刷活動が何をするのかを人々が理解できるようにするタイトルを使用します。
カスタム活動を表すシンボルを使用することを検討してください。 SF シンボル は、活動ビューで項目や概念を伝達するために使用できる構成可能なシンボルの包括的なセットを提供します。カスタムインターフェイスアイコンを作成する必要がある場合は、約 70x70 ピクセルの領域の中央に配置します。ガイダンスについては、アイコン を参照してください。
あなたが提供するカスタムアクションごとに、簡潔でわかりやすいタイトルを付けて下さい。 タイトルが長すぎる場合、システムはそれを包み込み、切り詰めることがあります。アクションが何をするかを明確に伝える単一の動詞または短い動詞句が望ましいです。アクションのタイトルに会社名や製品名を含めないでください。対照的に、共有シートでは、共有活動のタイトル (通常は会社名) がアイコンの下に表示されます。
活動が現在のコンテキストに適していることを確認してください。 活動ビューでシステムが提供するタスクを並べ替えることはできませんが、あなたのアプリに適用できないタスクを除外することはできます。たとえば、あなたのアプリ内から印刷する意味がない場合は、印刷 活動を除外できます。また、いつでも表示するカスタムタスクを特定することもできます。
[共有] ボタンを使用して、活動ビューを表示します。 人々は、[共有] ボタンを選択すると、システムが提供する活動にアクセスすることに慣れています。同じことを行う別の方法を提供することで、人々を混乱させないようにします。
共有と活動の拡張機能
共有拡張機能は、人々が現在のコンテキストからの情報をアプリ、ソーシャルメディアアカウント、およびその他のサービスと共有するための便利な方法を提供します。アクション拡張機能を使用すると、人々はコンテンツ固有のタスク (ブックマークの追加、リンクのコピー、インラインイメージの編集、選択したテキストの別の言語での表示など) を現在のコンテキストから離れることなく開始できます。
システムは、プラットフォームに応じて、共有とアクションの拡張機能を異なる方法で提示します。
必要に応じて、人々になじみのあるカスタムインターフェイスを作成します。 共有拡張機能の場合は、システムが提供する構成ビューが望ましく、これは、人々が既に知っている一貫した共有体験を提供するためです。アクション拡張機能の場合は、あなたのアプリ名を含めます。インターフェイスを表示する必要がある場合は、あなたのアプリのインターフェイスの要素を含めて、拡張機能とアプリが関連していることを人々が理解できるようにします。
操作を合理化し、制限します。 人々は、ほんの数ステップでタスクを実行できる拡張機能を高く評価します。たとえば、共有拡張機能は、1 回のタップまたはクリックでソーシャルメディアアカウントにイメージをすぐに投稿できます。
拡張機能の上にモーダルビューを配置しないでください。 デフォルトでは、システムはモーダルビュー内に拡張機能を表示します。拡張機能の上にアラートを表示する必要はあるかもしれませんが、追加のモーダルビューを表示することは避けてください。
必要に応じて、拡張機能の目的を伝えるイメージを提供してください。 共有拡張機能はあなたのアプリアイコンを自動的に使用するため、あなたのアプリが拡張機能を提供したことを人々に確信させるのに役立ちます。アクション拡張機能の場合は、シンボル を使用するか、タスクを明確に識別するインターフェイス アイコン を作成することをお勧めします。
あなたのメインアプリを使用して、時間のかかる操作の進行状況を示します。 活動ビューは、人々があなたの共有またはアクション拡張機能でタスクを完了するとすぐに閉じます。タスクに時間がかかる場合は、バックグラウンドで続行し、人々があなたのメインアプリで状況を確認できるようにします。通知を使用して問題を人々に知らせることはできますが、単にタスクが完了したからといって通知しないでください。
プラットフォームの考慮事項
iOS または iPadOS に関する追加の考慮事項はありません。macOS、tvOS、watchOS ではサポートされていません。
リソース
関連
開発者用文書
UIActivityViewController — UIKit (UIActivityViewController)
UIActivity — UIKit (UIActivity)
アプリ拡張機能サポート (App extension support)
ビデオ
メッセージと協力する
ためのデザイン
WWDC22
共有の新規事項
Tech Talks