gpt4 book ai didi

macos - 自定义 View ,Macos,Swift,让我的 EmptyView = self.moveView(frame : viewRect) viewRect cannot be found

转载 作者:行者123 更新时间:2023-11-30 14:10:55 26 4
gpt4 key购买 nike

我正在 Mac 上的 Swift 中使用自定义 View 。

我已经在 mac 窗口中设置了自定义 View ,我已链接到 swift 文件,并且在 swift 文件中我有以下内容:

import Cocoa

class moveView: NSView {
override func drawRect(rect: NSRect) {

NSColor.greenColor().setFill()

let path = NSBezierPath(rect: self.bounds)

path.fill()
}
let viewRect = NSRect(x: 0, y: 0, width: 100, height: 100)
let myEmptyView = self.moveView(frame: viewRect)

现在,当我尝试按原样使用最后一行进行编译时,我得到:

/Users/tony/Documents/test/test/ViewController.swift:21:19: 'moveView -> () -> moveView' does not have a member named 'moveView'

我不知道为什么(我正在使用 o'Reilly 的书 Swift Development with Cocoa。

你能解释一下为什么我瞄准了我所在的案例并且它不会被发现吗?如果我记得自己,错误消息非常相似......

/Users/tony/Documents/test/test/ViewController.swift:21:35: 'moveView.Type' does not have a member named 'viewRect'

感谢您的建议。

最佳答案

这行代码必须放置在类的方法中。放到viewdidload里面去检查。这会给你这个想法。

let myEmptyView = self.moveView(frame: viewRect)

当然上面那个也必须去

let viewRect = NSRect(x: 0, y: 0, width: 100, height: 100)

只需将这两行代码移动到 viewdidload 方法中即可。如果您不希望它在那里,请在确认它在方法内部工作后将它们放入您需要的任何其他方法中。

关于macos - 自定义 View ,Macos,Swift,让我的 EmptyView = self.moveView(frame : viewRect) viewRect cannot be found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31775841/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com