它让我无法理解为什么这段代码在里面drawRect:
是有效的:
UIBezierPath *buildingFloor = [[UIBezierPath alloc] init];
// draw the shape with addLineToPoint
[[UIColor colorWithRed:1 green:0 blue:0 alpha:1.0] setFill]; // I'm sending setFill to UIColor object?
[buildingFloor fill]; // Fills it with the current fill color
我的意思是,UIColor
对象收到一条消息setFill
,然后堆栈以某种方式理解这UIColor
现在将成为填充颜色,这不是很奇怪和错误吗?至少我希望通过调用一些CGContext
方法来设置填充......但现在不是表示颜色,而是UIColor
继续并做一些事情来改变我的绘图的上下文。
有人可以解释幕后发生的事情吗,因为我在这里完全迷失了?
在发布之前,我确实检查了这些参考资料:
http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIColor_Class/Reference/Reference.html http://developer.apple.com/library/ios/#documentation/uikit/reference/UIBezierPath_class /参考/参考.html