2011-08-11 9 views
2

Mac OSX 10.7 LionでAppleのPitch Shift Audio Unitプラグインを使用しています。 pitchShiftViewは各ノブごとに1つずつのCALayersで構成されています。nsviewに関連するすべてのCALayersを見つける方法は?

私はCALayersと思われるノブでパラメータ値を変更すると表示される値バーはありますが、CALayer階層には表示されません。彼らは消えなければならない画面にとどまり、悪いアクセスを終了してアプリをクラッシュさせてしまいます。

これらのレイヤにアクセスするにはどうすればよいですか、それともレイヤ階層の残りの部分に結び付けられないのですか?

答えて

1

実際にはレイヤではなく、少なくとも現在のレイヤではない可能性があります。NSViewそれらはNSViewのサブビューかもしれませんし、問題のNSViewの上に乗っているNSViewsさえあるかもしれません。ほとんど何でも可能です。

アクセシビリティインスペクタ(in/Developer)が最初に必要なツールです。これは、画面上の何かを指し示し、アクセシビリティ階層内のどこにあるかを調べることができます。アクセシビリティ階層は、ビュー階層内の場所と密接に関連しています。ビュー階層内のどこにあるのかを理解したら、デバッガがレイヤ階層内にある場合、デバッガでそれらがどこにあるのかを理解しようとすることができます。 Macではがオプションで、NSViewに追加されています。だから層がないかもしれない。

+0

ありがとうございました。アクセシビリティインスペクタは大きな助けとなります。私はこれまでこれを使用していませんでした。 – Mark

+0

彼らは、オーディオユニットビューを所有していたウィンドウの子ウィンドウであることが判明しました。あなたの完全に正しいロブ。 – Mark

+0

@Rob Napier ... AXInspectorは、CALayerの上、下、または真中にいる場合には、単に点滅したり、かき混ぜたり、さびれたりすることはありませんか?それは一見したところで私が今試した時のように見えますが、それは...想像を絶するほどです! (悪い種類) –

関連する問題