質問: NSCollectionViewの背景色を変更する NSCollectionViewの背景色をプログラム的に変更する機会ですか? 私はサブクラス化しようとしていた..しかし、動作していない.. ``` @interface CollectionViewBg : NSCollectionView ``` in .m ``` [self setBackgroundColors:[NSArray arrayWithObjects:[NSColor blueColor], nil]]; ```
回答: ほとんどのCocoaコントロールは外観と動作をカスタマイズするためにサブクラス化を避けるためのさまざまなテクニックを提供するので、推測サブクラス化は素晴らしい考えではありません。 この特定のケースでは、 `NSCollectionView` に `backgroundView` プロパティを設定し、カスタム背景を描画するためのカスタムビューを提供できます。 背景色のみを変更する必要がある場合、コレクションビューは通常、スクロールビューの内側に耐えられるという利点を活用することができます。 `NSScrollView` の `backgroundColor` と `drawsBackground` プロパティを設定するだけです。