这似乎是一个基本问题,但我仍在处理属性,所以请多多包涵。
我有一个自定义的 NSView 子类,它自己绘图。我已经使用@property
for setter 和typedef enum
人类可读的整数设置了对不同样式的支持。setNeedsDisplay:YES
它工作得很好,但是除非我手动调用控件或调整其父窗口的大小,否则在设置其样式后视图不会重绘。
从逻辑上讲,人们会认为解决方案是简单地[self setNeedsDisplay:YES]
在类的setStyle:
方法中做一个,但我一生都无法弄清楚如何正确地做到这一点。每当我尝试覆盖setStyle:
它时,都会抱怨,“可写原子属性‘样式’不能将合成的 getter 与用户定义的 setter 配对”。
在这种情况下应该怎么做?