前提・実現したいこと
swift4を使ってアプリを作っています。
最近、CALayerを使っているなかで、タッチイベントについての質問です。CAShapeLayerをタッチするとそのレイヤーを取得するコードを作っているのですが、CAShapeLayer以外をタッチした時にエラーが出てしまいます。エラーメッセージを見る限り、CAShapeLayer以外のLayerをタッチしていてエラーが出ているようです。解決策などありましたら教えていただけるとありがたいです。
■■な機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
Could not cast value of type 'CAShapeLayer' (0x1b56f55b8) to 'CATextLayer' (0x1b56f4c08). 2018-07-09 14:03:14.021902+0900 brain15[444:81264] Could not cast value of type 'CAShapeLayer' (0x1b56f55b8) to 'CATextLayer' (0x1b56f4c08).
該当のソースコード
swift4
1override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { 2 //タッチを取得 3 let touch:UITouch = touches.first! 4 5 //タッチした場所にあるレイヤーを取得 6 let layer:CAShapeLayer = hitLayer(touch: touch) as! CAShapeLayer 7}
補足情報(FW/ツールのバージョンなど)
OS 10.13.5
Xcode 9.4.1
Swift 4.1
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/09 05:48