私はウィンドウ内にNSTableViewを持つアプリケーションを持っています。私はウィンドウ全体とテーブルビューの背景としてCALayerを使いたいと思っています。これまでのすべての私の実験では、CALayerは常にNSTableViewを描画しますが、これは私が探している効果ではありません。この作業を行う方法はありますか、NSViewsに対するレイヤーホスティングビューの性質上、私は単に運が悪いのですか?他のNSViewの背景としてCALayerを使用
私のテストセットアップは、通常のNSScrollView/NSTableViewコンボと、その背後にある兄弟NSViewのビュー順のウィンドウです。 NSViewは、その中にカスタムレイヤー(backgroundColorが設定されたレイヤー)を持つレイヤーホスティングに設定されています。私は、ウィンドウのコンテンツビューをレイヤーバックアップに設定し、テーブルビュー自体を設定し、レイヤーバックのNSViewにNSScrollViewをラップしてみました。結果は常に同じです。
ご迷惑をおかけしていただきありがとうございます。
これはテストしましたか? NSScrollView/NSTableViewを使った私のテストでは、両方ともレイヤーバックに設定されていますが、CALayerはまだその上に表示されています。 –
初期化後に再配置しようとしましたか? awakeFromNibで?たとえば、addSubviewをスーパービューに正しい順序で送信することができます。スーパービューもレイヤーバックであることを確認してください。 – Remizorrr