-----------------------------------
内容の保証はできません。
-----------------------------------
&size(10){/System/Library/frameWorks/UIKit.framework};
*クラス UIPasteboard [#a9843cff]
''[[NSObject]]''~
  |~
  +--''UIPasteboard''~
**概要 [#b2b1c28b]
>
UIPasteboardクラスは、アプリケーションとアプリケーション内のデータまたは、他のアプリケーションが使用するシステム全体のデータまたは、アプリケーション固有のペーストボードのデータの共有を有効にします。
>
通常、アプリケーションのオブジェクトは、ユーザがユーザインタフェースの選択によりコピーまたは貼り付け操作をリクエストしたときにペーストボードにデータを書き込みます。同じまたは異なるアプリケーションの他のオブジェクトは、その後でユーザの貼り付け操作のリクエストにより、ペーストボードからデータを読み込み、新しい場所でユーザにそれを提供します。
>
ペーストボードはデータを共有することができるメモリ領域に生成されます。2つのシステムペーストボード、ジェネラルペーストボード(UIPasteboardNameGeneral)とファインドペーストボード(UIPasteboardNameFind)があり、ジェネラルペーストボードはコピー&ペースト操作のためあらゆる種類のデータと関係しています。ファインドペーストボードは検索操作に使用され、サーチバーの中にある最も最近の文字列を保持しています。アプリケーションもまた、独自の利用または関連するアプリケーションファミリーが利用するためのペーストボードを生成することが可能です。ペーストボードは必ずユニークな名前で識別されなければなりません。また、アプリケーションペーストボードを永続的なペーストボードとしてマークすることも考えられるので、アプリケーションの終了後にもペーストを存続させなければなりません。なお、システムペーストボードはデフォルトで永続的に存在しています。
>
ペーストボードにオブジェクトを書き込む時、それはペーストボードアイテムとしてペーストボードに格納されます。ペーストボードアイテムは1つまたは複数のキー値とペアになっており、値のデータを表現するタイプを識別する文字列になっています。複数のデータを表現するタイプを持っているペーストボードアイテムは、アプリケーション固有の機能を知らずにして、他のアプリケーションのデータを共有することを可能にします。例えば、あるアプリケーションがペーストボードにPNG、JPEG、GIFデータフォーマットの異なる同じ画像データを書き込んだ時、受信側アプリケーションがGIFイメージのイメージだけしか処理できなかい場合でも、ペーストボードのデータを取得することが可能です。
>
ユニフォームタイプの識別子(UTI)はデータを表現するタイプとして頻繁に使用されます。(ペーストボードタイプとしても時々呼び出されます)例えば、kUTTypeJPEG (jpeg公式の定数)のJPEGのデータを表現するタイプが使用できた時、アプリケーションは自由に任意の文字列をデータを表現するタイプとして使用できます。ただし、アプリケーション固有のデータタイプを使用する場合、一意性を確保するためにリバースDNSの表記を使用することをお勧めします。(例:com.myCompany.myApp.myType)
>
UIPasteboardクラスは、シングルペーストボードアイテムと同じぐらいの時間でマルチプルペーストボードアイテムを読み書きするメソッドを提供しています。データは2つの一般的な形で読み書きされます。もしもデータがプロパティリストオブジェクトで書かれたものか、またはそのようなオブジェクトに変換されたデータだった場合、setValue:forPasteboardType:メソッドを使用してペーストボードに書き込みます。もしもデータがバイナリデータ(例えば、画像データ)または、プロパティリストタイプで変換できないデータの場合は、setData:forPasteboardType:メソッドを使用してペーストボードに書き込みます。UIPasteboarで利用できるプロパティリストオブジェクトのクラスに、NSString、NSArray、NSDictionary、NSData、NSNumber、NSURLのクラスがあります。また、シングルまたはマルチプルペーストボードアイテムから文字列や画像、URLや色を読み書きするための便利なメソッドも提供しています。

>UIPasteboardクラスは、コピーや貼り付け操作の中枢となるクラスですが、その他のUIKitクラスやプロトコルもそれらの操作に利用されています。
>
■[[UIMenuController]] - コピー、切り取り、貼り付け、選択、全てを選択のコマンドのメニューを表示します。~
■[[UIResponder]] - レスポンダはcanPerformAction:withSender:メソッドを実装しており、現在のコンテキストに基づいて上記のメニューのコマンドを有効または無効にします。~
■UIResponderStandardEditActions - レスポンダは非公式のプロトコルに宣言されているこのメソッドを実装しており、選択されたメニューコマンドを処理します。
>
アプリケーションは、通常、コピーペーストを処理するためにそれを管理・提供するためのユーザインタフェースを実装しています。従って、ユーザインタフェースのデータモデルに、貼り付けや切り取り操作のアイテムを追加または削除してインタフェースを調整する必要があります。
**タスク [#t12ac4e9]
***ペーストボードの取得と削除 [#c162f631]
>
[[+ generalPasteboard>#w8b37f27]]~
[[+ pasteboardWithName:create:>#b21be084]]~
[[+ pasteboardWithUniqueName>#gd429fca]]~
[[+ removePasteboardWithName:>#u2b2e290]]~
***ペーストボード属性の取得と設定 [#d2d7cb4a]
>
[[name>#c929ad44]]  &color(gray,white){property};~
[[persistent>#i45636d3]]  &color(gray,white){property};~
[[changeCount>#h27714b7]]  &color(gray,white){property};~
***シングルペーストボードアイテムの決定 [#pc8d80ed]
>
[[– pasteboardTypes>#e67c875f]]~
[[– containsPasteboardTypes:>#d856e31f]]~
***シングルペーストボードアイテムの取得と設定 [#wa6911ff]
>
[[– dataForPasteboardType:>#he8fc67e]]~
[[– valueForPasteboardType:>#i58a28e8]]~
[[– setData:forPasteboardType:>#kad952db]]~
[[– setValue:forPasteboardType:>#x0eb56f4]]~
***マルチプルペーストボードアイテムのタイプの取得と設定 [#i41f7671]
>
[[numberOfItems>#ne881334]]  &color(gray,white){property};~
[[– pasteboardTypesForItemSet:>#de32e606]]~
[[– itemSetWithPasteboardTypes:>#dea2da87]]~
[[– containsPasteboardTypes:inItemSet:>#ge46784a]]~
***マルチプルペーストボードアイテムの取得と設定 [#ue1ff3f2]
>
[[items>#q9c35ee6]]  &color(gray,white){property};~
[[– dataForPasteboardType:inItemSet:>#ha46b1f9]]~
[[– valuesForPasteboardType:inItemSet:>#u8a04eea]]~
[[– addItems:>#e3d0fdec]]~
***スタンダードタイプのペーストボードアイテムの取得と設定 [#j8f3bb43]
>
[[string>#v430b804]]  &color(gray,white){property};~
[[strings>#u13346d4]]  &color(gray,white){property};~
[[image>#t1eaca47]]  &color(gray,white){property};~
[[images>#r6986167]]  &color(gray,white){property};~
[[URL>#x2d6fa9f]]  &color(gray,white){property};~
[[URLs>#pb3cbd9b]]  &color(gray,white){property};~
[[color>#gc6f7a49]]  &color(gray,white){property};~
[[colors>#m86e5e98]]  &color(gray,white){property};~
**プロパティ [#r246bceb]
//=============================
***changeCount [#h27714b7]
ペーストボードのコンテンツが変更された回数を返す。(読み取りのみ)
>@property(readonly, nonatomic) NSInteger changeCount
//=============================
***color [#gc6f7a49]
最初のペーストボードアイテムのカラーオブジェクト。
>@property(nonatomic, copy) [[UIColor]] *color
//=============================
***colors [#m86e5e98]
全てのペーストボードアイテムのカラーオブジェクトの配列。
>@property(nonatomic, copy) NSArray *colors
//=============================
***image [#t1eaca47]
最初のペーストボードアイテムのイメージオブジェクト。
>@property(nonatomic, copy) [[UIImage]] *image
//=============================
***images [#r6986167]
全てのペーストボードアイテムのイメージオブジェクトの配列。
>@property(nonatomic, copy) NSArray *images
//=============================
***items [#q9c35ee6]
ペーストボード上のペーストボードアイテム。
>@property(nonatomic,copy) NSArray *items
//=============================
***name [#c929ad44]
ペーストボードの名前。(読み取りのみ)
>@property(readonly, nonatomic) NSString *name
//=============================
***numberOfItems [#ne881334]
ペーストボード上のアイテム数を返す。(読み取りのみ)
>@property(readonly, nonatomic) NSInteger numberOfItems
//=============================
***persistent [#i45636d3]
ペーストボードが継続的なものであるかどうかを決定する。
>@property(getter=isPersistent, nonatomic) BOOL persistent
//=============================
***string [#v430b804]
最初のペーストボードアイテムの文字列。
>@property(nonatomic, copy) NSString *string
//=============================
***strings [#u13346d4]
全てのペーストボードアイテムの文字列の配列。
>@property(nonatomic, copy) NSArray *strings
//=============================
***URL [#x2d6fa9f]
最初のペーストボードアイテムのURLオブジェクト。
>@property(nonatomic, copy) NSURL *URL
//=============================
***URLs [#pb3cbd9b]
全てのペーストボードアイテムのURLオブジェクトの配列。
>@property(nonatomic, copy) NSArray *URLs
//=============================
**クラスメソッド [#i5ce0c32]
//=============================
***generalPasteboard [#w8b37f27]
一般的なコピー&ペースト操作に使用されるジェネラルペーストボードを返す。
>+ (UIPasteboard *)generalPasteboard
//=============================
***pasteboardWithName:create: [#b21be084]
名前によって識別されたペーストボードを返す。もしその名前のペーストボードが存在しないならオプションでそれを作成することができる
>+ (UIPasteboard *)pasteboardWithName:(NSString *)pasteboardNamecreate:(BOOL)create
//=============================
***pasteboardWithUniqueName [#gd429fca]
システムによって生成されたユニークな名前によって識別されたアプリケーションペーストボードを返す。
>+ (UIPasteboard *)pasteboardWithUniqueName
//=============================
***removePasteboardWithName: [#u2b2e290]
指定されたアプリケーションペーストボードを無効にする。
>+ (void)removePasteboardWithName:(NSString *)pasteboardName
//=============================
**インスタンスメソッド [#id660d86]
//=============================
***addItems: [#e3d0fdec]
ペーストボードの現在のコンテンツをペーストボードアイテムリストに追加する。
>- (void)addItems:(NSArray *)items
//=============================
***containsPasteboardTypes: [#d856e31f]
ペーストボードが指定された表現タイプのデータを保持しているかどうかを返す。
>- (BOOL)containsPasteboardTypes:(NSArray *)pasteboardTypes
//=============================
***containsPasteboardTypes:inItemSet: [#ge46784a]
指定されたペーストボードアイテムリストが与えられた表現タイプのデータを含んでいるかどうかを返す。
>- (BOOL)containsPasteboardTypes:(NSArray *)pasteboardTypes inItemSet:(NSIndexSet *)itemSet
//=============================
***dataForPasteboardType: [#he8fc67e]
ペーストボード内の与えられた表現タイプのデータを返す。
>- (NSData *)dataForPasteboardType:(NSString *)pasteboardType
//=============================
***dataForPasteboardType:inItemSet: [#ha46b1f9]
指定されたペーストボードアイテムで与えられた表現タイプを持つデータオブジェクトを返す。
>- (NSArray *)dataForPasteboardType:(NSString *)pasteboardType inItemSet:(NSIndexSet *)itemSet
//=============================
***itemSetWithPasteboardTypes: [#dea2da87]
指定された表現タイプを持っているペーストボードアイテムを識別しているインデックスセットを返す。
>- (NSIndexSet *)itemSetWithPasteboardTypes:(NSArray *)pasteboardTypes
//=============================
***pasteboardTypes [#e67c875f]
ペーストボード上の最初のアイテムのタイプを返す。
>- (NSArray *)pasteboardTypes
//=============================
***pasteboardTypesForItemSet: [#de32e606]
指定されたペーストボードアイテムに対する表現タイプの配列を返す。
>- (NSArray *)pasteboardTypesForItemSet:(NSIndexSet *)itemSet
//=============================
***setData:forPasteboardType: [#kad952db]
指定された表現タイプのペーストボードのデータを格納する。
>- (void)setData:(NSData *)data forPasteboardType:(NSString *)pasteboardType
//=============================
***setValue:forPasteboardType: [#x0eb56f4]
指定された表現タイプのペーストボードのプロパティリストを格納する。
>- (void)setValue:(id)value forPasteboardType:(NSString *)pasteboardType
//=============================
***valueForPasteboardType: [#i58a28e8]
与えられた表現タイプのペーストボードのオブジェクトを返す。
>- (id)valueForPasteboardType:(NSString *)pasteboardType
//=============================
***valuesForPasteboardType:inItemSet: [#u8a04eea]
指定されたペーストボードアイテムのプロパティリストオブジェクトで与えられた表現タイプを持つものを返す。
>- (NSArray *)valuesForPasteboardType:(NSString *)pasteboardType inItemSet:(NSIndexSet *)itemSet
//=============================
**コンスタント [#ba470d46]
//=============================
***Pasteboard Names [#pf0ecb17]
システムペーストボードの識別ネーム
|300|700|c
|UIPasteboardNameGeneral|ジェネラルペーストボードを識別するためのネーム|
|UIPasteboardNameFind|ファインドペーストボードを識別するためのネーム|
//=============================
***Data Type Extensions [#q4cb71d8]
ペーストボードアイテムのデータを表現するタイプに与えられるオブジェクト値
|300|700|c
|UIPasteboardTypeListString|kUTTypeUTF8PlainTextを含んでいる、文字列の表現タイプを持つペーストボードアイテムの配列。stringやstringsのプロパティに関連している。|
|UIPasteboardTypeListURL|kUTTypeURLを含んでいる、URLの表現タイプを持つペーストボードアイテムの配列。URLやURLsのプロパティに関連している。|
|UIPasteboardTypeListImage|kUTTypePNGやkUTTypeJPEGを含んでいる、イメージの表現タイプを持つペーストボードアイテムの配列。imageやimagesのプロパティに関連している。|
|UIPasteboardTypeListColor|色の表現タイプを持つペーストボードアイテムの配列。coloreやcolorsのプロパティに関連している。|
//=============================
***UserInfo Dictionary Keys [#gbc0a0a7]
ペーストボードから追加または削除されたペーストボードアイテムのデータタイプにアクセスするのに伴い使用されるキー
|300|700|c
|UIPasteboardChangedTypesAddedKey|UIPasteboardChangedNotificationと言う通知と共に、追加された表現タイプにアクセスするために使用されるキー。これらのタイプは配列として、通知userinfo辞書に格納されている。|
|UIPasteboardChangedTypesRemovedKey|UIPasteboardChangedNotificationと言う通知と共に、削除された表現タイプにアクセスするために使用されるキー。これらのタイプは配列として、通知userinfo辞書に格納されている。|
//=============================
**通知 [#pd79a5c4]
//=============================
***UIPasteboardChangedNotification [#q88da799]
ペーストボードのコンテンツが変更された時にペーストボードオブジェクトによって通知される。これが起こるのと同時に、ペーストボードのチェンジカウント(changeCountプロパティ)がインクリメントされる。コンテンツの変更には、ペーストボードの追加・削除・修正が含まれる。userinfo辞書はペーストボードから追加または削除されたペーストボードのデータを表現するタイプを含んでいる。これらの表現タイプにアクセスするために使用されるキーについては、UserInfo Dictionary Keysを参照すること。ペーストボードが(追加または削除を除いて)修正された場合は、userinfo辞書はnilになる。
//=============================
***UIPasteboardRemovedNotification [#p4b0c9af]
アプリケーションがペーストボードを削除する直前にペーストボードオブジェクトによって通知される。その削除に関連するクラスメソッドはremovePasteboardWithName:である。この通知はuserinfo辞書には含まれない。
//=============================

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS