NSView setNeedsDisplay不可用

时间:2015-12-28 02:32:17

标签: ios xcode swift cocoa

我已经在Objective-C中编写了一个Cocoa应用程序,它在nib文件的一个CustomView中进行了一些绘制。通过调用" [theView setNeedsDisplay:YES]"更新自定义视图。从我的视图控制器类,一切都按预期工作。但是当我将这个应用程序转换为Swift 2.1时,我无法使用" theView.setNeedsDisplay()"更新视图。 (有或没有" true")自动完成不提供此调用,当我尝试使用它时,我得到一个错误,表明该课程没有有一个名为" setNeedsDisplay"的成员。应用程序中的其他所有内容与Objective-C版本完全相同。有没有其他人有这个问题?我在El Capitan上运行XCode 7.1.1。

1 个答案:

答案 0 :(得分:4)

至少在优胜美地needsDisplay被宣布为财产。

与可以使用隐式setter语法setNeedsDisplay的Objective-C不同,由于其单独的点语法,因此set<Ivar>在Swift中不可用。

你必须写

myView.needsDisplay = true