使用负边界原点设置NSView的背景颜色

时间:2013-03-17 18:18:02

标签: objective-c cocoa nsview drawrect

我目前正在尝试为具有负边界原点的NSView设置背景颜色/图案。问题是,它只对视图的一部分着色(那些x> 0&& y> 0)。

我明白,我必须在 - (void)drawRect:函数中绘制背景。如何为整个视图着色,而不仅仅是坐标为正的那些部分?

NSView 原产地:-65,-65 大小:130,130

我想为整个背景着色

1 个答案:

答案 0 :(得分:0)

尝试使用NSBezierPath对象设置视图的背景颜色:

NSColor *color; //your background colour
CustomView *view; //this is your view, you should init it with the his own class
[color set];
[NSBezierPath fillRect:[view bounds]]; //sets the given Rect with the set colour

此代码应使用给定颜色为所有背景着色。 请注意,如果代码位于视图类的实现中,则应将最后一行替换为[path fillRect:[self bounds]]