我不知道如何在Objective-C中控制和操作2D图形。如果答案能说明如何使用Quartz或Cocoa都可以。我现在有这段代码:
CGContextRef myContext = [[NSGraphicsContext currentContext] graphicsPort];
CGContextSetRGBFillColor (myContext, 1, 0, 0, 1);
CGContextFillRect (myContext, CGRectMake (0, 0, 200, 100 ));
CGContextSetRGBFillColor (myContext, 0, 0, 1, .5);
CGContextFillRect (myContext, CGRectMake (0, 0, 100, 200));
我从苹果的Quartz 2D图形教程中获得了这段代码,但当我调用该方法时,没有任何反应。我确定我只是在某个地方漏掉了一些代码。
我正在使用Xcode开发OS X应用程序,其中涉及2D图形,但Mac Developer Library中的教程并不是很详细,除非我读错了所有的教程。我完全不懂Obj-C绘图,所以这可能看起来很基础。
如果需要其他信息,请在评论中询问。谢谢。
drawRect:
内部调用它)。 - David RönnqvistdrawRect:
方法中读取当前上下文。当视图需要绘制时,该方法将被调用。如果你需要重新绘制视图,只需在其上调用setNeedsDisplay
方法,这将标记它为脏视图,以便重新绘制。 - David RönnqvistsetNeedsDisplay
方法?NSWindow 上吗? - Arc676