watchOS 3.0の時点で、デジタルクラウンの回転を取得できるようになりました。私はcrownDidRotate関数をInterfaceControllerで使うことができました。 SKSceneクラスの内側からクラウンの回転を得ることはできません。 誰かがこれで私を助けることができますか私は今かなり失われていますか?おかげさまで お使いのインタフェースコントローラのものcrownDidRotate
のコールを取得するにはwatchOS 3.0 SpriteKitでクラウン回転を検出
4
A
答えて
7
は、あなたのインタフェースコントローラでWKCrownDelegate
プロトコルを採用し、そのcrownSequencer
のdelegate
としてあなたインタフェースコントローラを設定する必要がありました。
、他のいくつかのクラスでcrownDidRotate
のコールを取得し、そのクラスにWKCrownDelegate
プロトコルを採用し、あなたのインタフェースコントローラのcrownSequencer
のdelegate
として、そのクラスのインスタンスを設定します。
おそらくあなたはすでにあなたのSpriteKitベースのシーンを設定するには、このようないくつかのコードを持って:あなたはMyScene
クラスでWKCrownDelegate
適合を宣言した場合は、単にのデリゲートとして設定する行を追加し、
class InterfaceController: WKInterfaceController {
@IBOutlet var spriteGizmo: WKInterfaceSKScene!
override func awake(withContext context: AnyObject?) {
super.awake(withContext: context)
let scene = MyScene(fileNamed: "MyScene")
spriteGizmo.presentScene(MyScene(fileNamed: "MyScene"))
}
}
をインタフェースコントローラのクラウンシーケンサー:
let scene = MyScene(fileNamed: "MyScene")
spriteGizmo.presentScene(MyScene(fileNamed: "MyScene"))
crownSequencer.delegate = scene
(あるいは、ストーリーボードであなたのWKInterfaceSKScene
の場面を設定している場合、あなたはまだインターフェースからWKInterfaceSKScene
を参照することができます。コントローラーはIBOutlet
です。その後awake(withContext:)
に、あなたはその出口を通ってシーンにアクセスすることができますし、クラウンデリゲートとして設定)
0
をwatchOS 3では、単に任意のオブジェクトのオブジェクトはデリゲートとして、それらを設定することにより、デジタル冠イベントを取得することができます。
let crownSequencer = WKExtension.shared().rootInterfaceController!.crownSequencer
crownSequencer.delegate = self
crownSequencer.focus()
は次に実装することにより、値をリードバック:
func crownDidRotate(_ crownSequencer: WKCrownSequencer?, rotationalDelta: Double)
特にそのUI画面に適合し、実際のスクロールを必要としないコントローラに、focus()
を呼び出すことが重要です。
関連する問題
- 1. WatchOS 3.0のCoreLocation
- 2. SpriteKit。回転を停止CameraNodeでテクスチャ
- 3. スウィフト3.0 SpriteKitベース
- 4. iphoneの回転を検出するときに検出する
- 5. Androidの画面の回転検出
- 6. 衝突検出回転矩形
- 7. アンドロイドは検出回転&スクリーン幅
- 8. watchOS 3にテクスチャを抽出
- 9. Swift Spritekitが回転インパルスを適用する
- 10. KivyのAndroidで画面回転を検出するには?
- 11. Microsoft Surfaceでカメラの回転を検出しますか?
- 12. 加速度計で回転を検出する
- 13. Swift SpriteKit水平にとどまるマリオスタイルの回転プラットフォーム
- 14. 回転不変検出器の最適解は何ですか?
- 15. Androidで画面の回転が検出されない
- 16. SpriteKitでSwiftを使ってSpriteNodeを回転させる方法は?
- 17. 衝突検出の問題swift 2.0 spritekit
- 18. Xcode 8.0 Swift 3.0でジェスチャーを検出
- 19. WatchOSシミュレータでの位置検出が失敗しました
- 20. iOS - UIViewcontrollerが回転を検出していますか?
- 21. Actionscript 3.0でのスプライトの衝突検出
- 22. 回転した画像の衝突検出
- 23. CSS3回転遷移は、断続的なマウスクリックの検出
- 24. iphone 3gsの垂直(y軸)回転の検出
- 25. 方向変更後のUIViewの回転幅/高さの検出
- 26. 加速度計の検出とスプライトの回転
- 27. iPhone - 回転検出が敏感すぎる
- 28. Three.js回転ベクトルと画面のエッジ検出
- 29. アンドロイドで検出を回す
- 30. SpriteKitで境界フレームとSKNodeの衝突を検出しない