編集メニュー
人々は、テキストフィールドや、テキストビュー、Web ビュー、またはイメージビューの要素を長押しまたはダブルタップして、コンテンツを選択したり、Copy と Paste などの編集オプションを表示できます。
現在のコンテキストに適したコマンドを表示します。 デフォルトでは、オプションには、Cut、Copy、Paste、選択、すべて選択、および Delete コマンドが含まれ、これらのコマンドはオプションで無効にできます。何も選択されていない場合、メニューには、Copy や Cut など、選択が必要なオプションは表示されません。同様に、何かがすでに選択されている場合は、メニューには Select オプションは含まれません。
必要に応じて、編集オプションの配置を調整します。 デフォルトでは、メニューは、使用可能なスペースに応じて、挿入ポイントまたは選択範囲の上または下に配置され、関連するコンテンツへのポインタが含まれます。メニューの形状を変更することはできませんが、メニューの位置は構成可能です。重要なコンテンツやインターフェースの一部がメニューに含まれないようにできます。
編集メニューと同じ機能を持つ他のコントロールを実装しないでください。 操作を開始するための複数の方法を提供すると、一貫性のないユーザ体験が発生し、混乱を招きます。たとえば、あなたのアプリでメニューを使用してコンテンツをコピーできる場合は、コピーボタンも実装しないでください。
潜在的に有用な編集不可能なテキストを選択してコピーできるようにします。 多くの場合、人々はイメージラベルやソーシャルメディアのステータスなどの静的コンテンツを、電子メールや、メモ、または Web 検索に追加したいと考えています。
ボタンに編集オプションを追加しないでください。 これを行うと、オプションを公開しようとする人々は、代わりにボタンをアクティブにすることになります。
編集操作を取り消すことができるようにして下さい。 メニューは、アクションが実行される前に確認する必要はありません。操作を実行した後に誰かが気が変わる可能性があるため、常に元に戻るとやり直しのサポートを実装してください。
便利なカスタムコマンドで編集オプションを拡張します。 追加のアプリ固有のコマンドを提供することで、価値を高めることができます。標準コマンドと同様に、カスタムコマンドは全て選択したテキストまたはオブジェクトを操作します。
システムが提供するコマンドの後にカスタムコマンドを表示します。 よく知られていて頻繁に使用される、システムが提供するコマンドにカスタムコマンドを散らばせないでください。
カスタムコマンドの数を最小限に抑えます。 選択肢が多すぎて人々を圧倒しないでください。
カスタムコマンド名は短くしてください。 コマンド名は、実行するアクションを簡潔に説明する動詞または短い動詞句にするべきです。タイトルスタイルの大文字化を使用します。冠詞、等位接続詞、および 4 文字以下の前置詞を除くすべての単語を大文字で始めます。
開発者向けガイダンスについては、iOS 向けテキストプログラミングガイド (Text Programming Guide for iOS) 内の コピー、切り取り、および貼り付け操作 (Copy, Cut, and Paste Operations) および UIMenuController (UIMenuController) を参照してください。