2

Mac OSX 10.7 Lion で Apple の Pitch Shift Audio Unit プラグインをホストしています。pitchShiftView は CALayers で構成されています: 各ノブなどに 1 つです。

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

これらのレイヤーにアクセスするにはどうすればよいですか、またはレイヤー階層の残りの部分に関連付けられていないのはなぜですか?

4

1 に答える 1

1

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

最初に必要なツールは Accessibility Inspector (/Developer にあります) です。画面上の任意のものをポイントすると、それがアクセシビリティ階層のどこにあるかを見つけることができます。これは、多くの場合、ビュー階層のどこにあるかと密接に関連しています。それらがビュー階層のどこにあるかを理解したら、それらがレイヤー階層にある場合は、デバッガーを使ってレイヤー階層のどこにあるかを理解しようとすることができます。Mac では、CALayerは へのオプションの追加であることに注意してくださいNSView。だから層がないのかもしれません。

于 2011-08-12T00:35:51.260 に答える