我在简单的 Cocoa 应用程序中重绘自定义 View 时遇到问题。绘图基于一个参数,该参数由一个简单的 NSSlider 更改。但是,尽管我实现了 -setParameter: 和 -parameter 方法并将 slider 的值绑定(bind)到界面生成器中的该参数,但我似乎无法创建自定义 View 来重绘自身。
重绘的代码是这样的:
- (void)setParameter:(int)newParameter {
parameter = newParamter;
NSLog(@"Updated parameter: %d", parameter);
[self setNeedsDisplay:YES];
}
我确实收到了关于设置新参数的消息,尽管 View 本身没有重绘。欢迎任何想法!
最佳答案
通常的语法是:[self setNeedsDisplay:YES]
,尽管我认为这意味着同一件事。您是在实现 - (void)drawRect:(NSRect)rect
方法,还是使用父类(super class)的 drawRect:
方法?
关于objective-c - setNeedsDisplay 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/327326/