我已经在Objective-C中编写了一个Cocoa应用程序,它在nib文件的一个CustomView中进行了一些绘制。通过调用" [theView setNeedsDisplay:YES]"更新自定义视图。从我的视图控制器类,一切都按预期工作。但是当我将这个应用程序转换为Swift 2.1时,我无法使用" theView.setNeedsDisplay()"更新视图。 (有或没有" true")自动完成不提供此调用,当我尝试使用它时,我得到一个错误,表明该课程没有有一个名为" setNeedsDisplay"的成员。应用程序中的其他所有内容与Objective-C版本完全相同。有没有其他人有这个问题?我在El Capitan上运行XCode 7.1.1。
答案 0 :(得分:4)
至少在优胜美地needsDisplay
被宣布为财产。
与可以使用隐式setter语法setNeedsDisplay
的Objective-C不同,由于其单独的点语法,因此set<Ivar>
在Swift中不可用。
你必须写
myView.needsDisplay = true