XCPlayground モジュールリファレンス


XCPlayground モジュールでは、プレイグラウンドから Xcode と対話できます。


このモジュールをプレイグラウンドで使用するには、以下のように XCPlayground モジュールを import します。


import XCPlayground


XCPlaygroundPage クラス


XCPlaygroundPage オブジェクトは、Xcode と対話できるようにする、プレイグラウンドページの状態を表すメソッドとプロパティを提供します。機能には、値のキャプチャと表示、プレイグラウンドの実行の終了、ライブビューの管理を含みます。


タスク


現在のプレイグラウンドページの取得


currentPage


現在のプレイグラウンドページを取得します。


宣言


public class let currentPage: XCPlayground.XCPlaygroundPage


議論


playground ページインスタンスを検索するために currentPage を使用してください。


利用可能性


Xcode 7.1 以降で利用可能です。





Playground 実行の管理


needsIndefiniteExecution


不確定の実行が可能かどうかを示すブール値を設定します。


宣言


public var needsIndefiniteExecution: Bool


議論


デフォルトでは、すべての最上位コードが実行され、そして実行が終了します。 非同期コードを使用する場合、不確定の実行を可能にして、プレイグランドの最上位コードの終わりに達した後まで実行を続行できるようにします。これはスレッドとコールバックに順序に実行時間を与えます。


プレイグランドを編集すると、不確定の実行が可能になっても自動的に実行が停止します。


最上位コードの終了後も実行を続行するには、needsIndefiniteExecutiontrue に設定し、その時点で実行を停止するには false に設定します。


デフォルト値は false です。liveViewnil 以外の値に設定されている場合は true に設定されます。


利用可能性


Xcode 7.1 以降で利用可能です。


finishExecution


現在のプレイグラウンドページの実行を終了します。


宣言


@noreturn public func finishExecution()


議論


playground で実行されている関数は finishExecution で終了し、値を返しません。


利用可能性


Xcode 7.1 以降で利用可能です。





情報の表示


captureValue:withIdentifier:


タイムラインに、指定された識別子で表示される値をキャプチャーします。


宣言


public func captureValue<T>(value: T, withIdentifier identifier: String)


パラメーター


キャプチャーして表示する値。
識別子キャプチャされた値の上のタイムラインに表示する識別子。


議論


同じ値の履歴の識別子で複数の値をキャプチャーすると、同じタイムライン項目に、graph (グラフ) のような値が表示されます。異なる識別で値をキャプチャーすると、異なるタイムライン項目に値が表示されます。


識別子は、アイテムのタイトルとしてタイムラインに表示されます。


利用可能性


Xcode 7.1 以降で利用可能です。





Live View の管理


liveView


アシスタントのタイムラインにあるアクティブなライブビュー、ライブビューがない場合は nil


宣言


public var liveView: XCPlaygroundLiveViewable?


議論


liveViewXCPlaygroundLiveViewable プロトコルに準拠するオブジェクトに設定して、ライブビューを表示します。


liveViewnil に設定して、開いているライブビューを閉じます。


ライブビューは、現在のプレイグラウンドページのアシスタントエディタに表示されます。いつでも1つのライブビューだけを開くことができます。


ライブビューを表示するには、needsIndefiniteExecutiontrue に設定されている必要があります。liveViewnil 以外の値に設定されている場合、システムは needsIndefiniteExecutiontrue に設定します。


利用可能性


Xcode 7.1 以降で利用可能です。





XCPlaygroundLiveViewable プロトコル


XCPlaygroundLiveViewable プロトコル は、プレイグラウンドのライブビューとして表示できる型のプロトコルです。デフォルトでは、UIViewUIViewController は iOS と tvOS でこのプロトコルに準拠し、NSViewNSViewController は OS X でこのプロトコルに準拠しています。


開発者は、UIView、UIViewController、NSView、 または NSViewController から継承しないカスタムオブジェクトにのみ、このプロトコルを実装する必要があります。


public protocol XCPlaygroundLiveViewable


タスク


プレイグラウンドデータディレクトリを返す


playgroundLiveViewRepresentation


ライブビューのレンダリングと管理に使用されるビューまたはビューコントローラを返します。


宣言


public func playgroundLiveViewRepresentation() -> XCPlayground.XCPlaygroundLiveViewRepresentation


戻り値


ライブビューをレンダリングおよび管理できるビューコントローラまたはビュー。View Controller が好まれます。


重要: このメソッドによって返されたビューまたはビューコントローラは、階層のルートでなければなりません。ビューには、スーパービューまたは関連するビューコントローラを持てません。View Controller には親ビューコントローラを持てません。


議論


このプロトコルを使用すると、任意の型のオブジェクトをライブビューに表示できます。たとえば、単純化されたユーザーインターフェイスプログラミング環境を提供するプレイグラウンドは、そのビューのような型を XCPlaygroundLiveViewable に準拠させ、ライブビューに表示することができます。


playgroundLiveViewRepresentation で返される値は、メソッドが呼び出されるたびに異なる場合があります。


カスタムの playgroundLiveViewRepresentation メソッドの形式は以下のような形式を持ちます。


func playgroundLiveViewRepresentation() -> XCPlaygroundLiveViewRepresentation {
        let viewController: {NS,UI}ViewController = … // code producing a {NS,UI}ViewController
            // configure the view controller
            …
        return .ViewController(viewController)
}


利用可能性


Xcode 7.1 以降で利用可能です。





データ型


XCPlaygroundLiveViewRepresentation


プレイグラウンドでライブビュー表現をサポートしているシステム提供の基底クラス。


iOS と tvOS 用の宣言


public enum XCPlaygroundLiveViewRepresentation {
        case View(UIView)
        case ViewController(UIViewController)
}


OS X 用の宣言


public enum XCPlaygroundLiveViewRepresentation {
        case View(NSView)
        case ViewController(NSViewController)
}


利用可能性


Xcode 7.1 以降で利用可能です。





定数


XCPlaygroundSharedDataDirectoryURL


プレイグラウンドとプレイグラウンド実行の間で共有される永続データに使用されるディレクトリ。


宣言


public let XCPlaygroundSharedDataDirectoryURL: NSURL


議論


共有データファイルは ~/Documents/Shared Playground Data/ に保存されます。XCPlaygroundSharedDataDirectoryURL は、任意のプレイグラウンドで使用可能なサンドボックス対応のディレクトリ URL を返します。独自のディレクトリ URL を作成することは動作が保証されません。


重要: この定数を使用する前に ~/Documents/ Shared Playground Data/ ディレクトリを作成する必要があります。Xcode はディレクトリを作成しません。


利用可能性


Xcode 7.1 以降で利用可能です。





旧式となった関数とプロパティ


Xcode 7.1 以降では、以下の関数とプロパティは旧式となりました。


XCPCaptureValue


Xcode 7.1 で旧式となりました:代わりに captureValue:withIdentifier: を使用してください。


タイムラインの指定された値履歴に表示される値をキャプチャします。


パラメーター


func XCPCaptureValue<T>(identifier: String, value: T)


identifier

値履歴の識別子。


value

キャプチャされるべき値。


同じ値履歴の識別子で複数の値をキャプチャすると、グラフ(graph) のような同じタイムライン項目に値が表示されます。異なる識別子が値を取り込むと、異なるタイムライン項目上に値が表示されます。


識別子は、項目のタイトルとしてタイムラインに表示されます。





XCPExecutionShouldContinueIndefinitely


Xcode 7.1 で旧式となりました:代わりに needsIndefiniteExecution を使用してください。


不確定の実行が可能かどうかを示すブール値を返します。


func XCPExecutionShouldContinueIndefinitely() -> Bool


戻り値


プレイグランドの最上位コードの終わりに達した後に実行が継続する場合は true を返します。それ以外の場合は false


XCPSetExecutionShouldContinueIndefinitely も参照してください。





XCPSetExecutionShouldContinueIndefinitely


Xcode 7.1 で旧式となりました:代わりに needsIndefiniteExecution を使用してください。


不確定の実行が可能かどうかを示すブール値を設定します。


func XCPSetExecutionShouldContinueIndefinitely(continueIndefinitely: Bool = default)


continueIndefinitely



デフォルトでは、すべての最上位コードが実行され、そして実行が終了します。非同期コードを使用する場合、不確定の実行を有効にして、プレイグランドの最上位コードの終わりに達した後に実行を続行できるようにします。これは順にスレッドとコールバックに実行時間を与えます。


実行が継続する時間の量は、タイムラインの設定によって制御されます。プレイグランドを編集すると、不確定な実行が有効でも自動的に実行が停止します。


XCPExecutionShouldContinueIndefinitely も参照してください。





XCPShowView


Xcode 7.1 で旧式となりました:代わりに liveView を使用してください。


プレイグラウンドの実行中にビューを表示し、実行後に再生するためのフレームを記録します。


func XCPShowView(identifier: String, view: NSView)

func XCPShowView(identifier: String, view: UIView)


identifier

ライブビュー用の識別子。


view


この関数は、XCPExecutionShouldContinueIndefinitely 関数の呼び出しのように、不確定な実行が可能になるようにします。


識別子はタイムラインに項目のタイトルと同じキャプションで表示されます。





XCPSharedDataDirectoryPath


Xcode 7.1 で旧式となりました:代わりに XCPlaygroundSharedDataDirectoryURL を使用してください。


すべてのプレイグランド間で共有されるデータを含むディレクトリへのパスを返します。


let XCPSharedDataDirectoryPath: String


このディレクトリを使用して、プレイグラウンドの実行間に保持する必要があるデータや、複数のプレイグラウンド間で共有する必要のあるデータを格納します。





次へ

目次
Xcode 9 の新機能

  • XCPlayground モジュールリファレンス
  • XCPlaygroundPage クラス
  • タスク
  • 現在のプレイグラウンドページの取得
  • currentPage
  • Playground 実行の管理
  • needsIndefiniteExecution
    finishExecution
  • 情報の表示
  • captureValue:withIdentifier:
  • Live View の管理
  • liveView
  • XCPlaygroundLiveViewable プロトコル
  • タスク
  • プレイグラウンドデータディレクトリを返す
  • playgroundLiveViewRepresentation
  • データ型
  • XCPlaygroundLiveViewRepresentation
  • 定数
  • XCPlaygroundSharedDataDirectory
    URL

  • 旧式となった関数とプロパティ
  • XCPCaptureValue
    XCPExecutionShouldContinue
    Indefinitely

    XCPSetExecutionShouldContinue
    Indefinitely

    XCPShowView
    XCPSharedDataDirectoryPath
    文書改定履歴












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)












    トップへ(Playground モジュールリファレンス)