Swift协议:方法不会覆盖其超类中的任何方法

时间:2014-06-24 07:23:13

标签: cocoa swift nslayoutmanager

由于Xcode 6仍然有很多Swift的错误,我不确定它是一个还是我遗漏了一些东西。 我的类采用协议NSLayoutManagerDelegate。但似乎不可能覆盖我需要的方法。我按照文档描述:

override func layoutManager(_ aLayoutManager: NSLayoutManager!,
        didCompleteLayoutForTextContainer aTextContainer: NSTextContainer!,
        atEnd flag: Bool) {

    }

但我在这里得到错误:方法不会覆盖其超类中的任何方法。 我该怎么办?

1 个答案:

答案 0 :(得分:91)

您正在从协议中实施一种方法,是的,但它并不是一种覆盖。只需删除override关键字即可。覆盖是当您的超类也实现该方法并且您提供替换或修改超类实现的行为的版本时。那不是这里发生的事情。