我有一个NSView子类"图形"在某些地方被绘制出来。
现在我想要一个公共方法来移动/调整rects。我试图设定一个新的起源,但这对我没有用。
rect.origin.x = anything;
现在我该如何移动rects?
问候
答案 0 :(得分:1)
您正在使用名为" drawRect"的方法绘制矩形,每当NSView认为它需要重新显示时,它就会运行。
您的问题是您在此方法中设置矩形的初始位置,因此您在其他方法中所做的每个更改都不重要,并且每次都会重置。您应该在init或awakeFromNib等方法中设置矩形初始位置,这种方法只发生一次。
在您的按钮更改矩形原点的值后,您可以使用以下命令告诉视图重绘:
[self setNeedsDisplay:YES];
所以在更改rect原点的代码之后添加它,你应该没问题。