PlaygroundRemoteLiveViewProxyDelegate Protocol
PlaygroundRemoteLiveViewProxyDelegateプロトコル
A type that supports receiving asynchronous messages from an always-on live view.
ある型、それは常時接続のライブビューからの非同期のメッセージの受け取りをサポートします。
Overview
概要
This protocol enables an object to become the delegate of a PlaygroundRemoteLiveViewProxy Class object. Use this protocol to receive messages from a remote proxy and to be informed when the connection with the remote proxy is closed.
このプロトコルは、あるオブジェクトにPlaygroundRemoteLiveViewProxyクラスオブジェクトの委任先になる能力を与えます。このプロトコルを使ってリモートプロキシからメッセージを受け取って、リモートプロキシとの接続が閉じられるならば通知されるようにしてください。
The following example shows a class extension that starts an assessment of the users' current progress and terminates the current playground when the always-on live view sends a message that it has finished the current task. Line 1 adds support for PlaygroundRemoteLiveViewProxyDelegate
as an extension to the MyPlaygroundPageManager
class. Lines 2-9 implement the method for receiving the message from the always-on live view. Lines 4 and 5 checks if “finishedTask” is true
. Line 6 calls a custom function to update the user assessment, and line 7 terminates the current playground.
以下の例はあるクラス拡張を示します、それはユーザの現在の進捗の評価を開始して、常時接続のライブビューがメッセージを送る時、それが現在の作業を完了してしまったという時に現在のプレイグラウンドを終了します。行1は、PlaygroundRemoteLiveViewProxyDelegate
に対するサポートをある拡張としてMyPlaygroundPageManager
クラスに加えます。行2-9は、常時接続のライブビューからメッセージを受け取るためのメソッドを実装します。行4と5は、「finishedTask」がtrue
かどうか確認します。行6は、カスタム関数を呼び出してユーザ評価を更新します、そして行7は現在のプレイグラウンドを終了します。
extension MyPlaygroundPageManager: PlaygroundRemoteLiveViewProxyDelegate {
func remoteLiveViewProxy(_ remoteLiveViewProxy: PlaygroundRemoteLiveViewProxy,
received message: PlaygroundValue) {
guard case let .dictionary(dict) = message else { return }
if case .boolean(_)? = dict["finishedTask"] {
updateAssessmentStatus()
PlaygroundPage.current.finishExecution()
}
}
}
This example shows setting the proxy for a live view to a MyPlaygroundPageManager
object.
この例は、あるライブビューに対するプロキシをMyPlaygroundPageManager
オブジェクトに設定することを示します。
import PlaygroundSupport
let proxy = PlaygroundPage.current.liveView as! PlaygroundRemoteLiveViewProxy
let delegate = MyPlaygroundPageManager()
proxy.delegate = delegate
Protocol Methods
プロトコルメソッド
remoteLiveViewProxyConnectionClosed(_:)
Informs the handler that the connection between the proxy and the live view was closed.
ハンドラにプロキシとライブビューの間の接続が閉じられたことを告知します。
Declaration
宣言
func remoteLiveViewProxyConnectionClosed(_ remoteLiveViewProxy: PlaygroundRemoteLiveViewProxy)
Parameters
パラメータ
remoteLiveViewProxy: The live view connected to the proxy object.
remoteLiveViewProxy: プロキシオブジェクトに接続されるライブビュー。
remoteLiveViewProxy(_:, received:)
Allows the handler to receive a message from an always-on remote live view proxy.
ハンドラに常時接続のリモートライブビュープロキシからのメッセージを受け取るようにします。
Declaration
宣言
func remoteLiveViewProxy(_ remoteLiveViewProxy: PlaygroundRemoteLiveViewProxy, received message: PlaygroundValue)
Parameters
パラメータ
remoteLiveViewProxy: The live view connected to the proxy object.
remoteLiveViewProxy: プロキシオブジェクトに接続されるライブビュー。message: A message encoded as a PlaygroundValue Enumeration.
message: PlaygroundValue列挙としてエンコードされるメッセージ。
PlaygroundLiveViewSafeAreaContainer Protocol
PlaygroundLiveViewSafeAreaContainerプロトコル
Copyright © 2018 Apple Inc. All rights reserved. Terms of Use | Privacy Policy | Updated: 2018-04-30