私はこれをどこでも探しましたが、運がありませんでした。プロジェクトでNSCollectionViewを使用しており、アレイコントローラーを介してCoreDataにバインドしています。希望どおりに表示するために、NSViewを新しいdrawRectメソッドでサブクラス化し、これをNSCollectionViewItemのビューアウトレットに接続しました。それはすべて正しく機能し、バインディングは良好ですが、何らかの理由でコレクションビューの最初のアイテムに対してのみカスタム描画を実行します。NSCollectionViewが新しいアイテムを作成するときにペン先をコピーするという事実に関係していると思います。これが私のdrawRectです:最初にメソッド:
@implementation CompanyItemView
-(void)drawRect:(NSRect)dirtyRect
{
NSBezierPath *path = [NSBezierPath bezierPathWithRoundedRect:[self frame]
xRadius:6.0f
yRadius:6.0f];
[[NSColor whiteColor] set];
[path fill];
[[NSColor darkGrayColor] set];
[path stroke];
}
@終わり
何か案は?