【问题标题】:Xcode can't see swift subclassXcode 看不到 swift 子类
【发布时间】:2015-02-05 23:22:35
【问题描述】:

我对 UIScrollView 进行了子类化以添加一些关于滚动和按钮的功能,而 Xcode 无论如何都无法看到我的子类。

let scrollView = CustomScrollView()

只是给我一个“使用未解析的标识符'CustomScrollView'”错误。我已经清理了项目,重新启动了 Xcode,并且该类肯定已添加到我的项目目标中,所以我不太确定发生了什么。以下是 CustomScrollView 类中的所有代码:

import UIKit

class CustomScrollView: UIScrollView {

  override func touchesShouldBegin(touches: NSSet!,
    withEvent event: UIEvent!,
    inContentView view: UIView!) -> Bool
  {
    if (view .isKindOfClass(UIButton))
    {
      return true
    }

    else
    {
      return super.touchesShouldCancelInContentView(view)
    }
  }

}

【问题讨论】:

    标签: ios xcode swift uiscrollview


    【解决方案1】:

    检查事项:

    1. 文件包含在目标中。 (您表示已完成。)
    2. 确保它在同一个模块中。 (或尝试将其公开。)
    3. 使用类编译文件成功。

    您是否尝试过从声明它的文件中访问它?

    【讨论】:

    • 你提到的一切都是应该的,我最终将它从目标中删除,然后读取它,然后它就起作用了......我猜只是那些奇怪的事情之一
    • 我会留下答案,因为它可能对其他人有帮助。以前没有见过 Xcode 这样做,但我在 Interface Builder 中看到过类似的事情,其中​​移动某些东西并将其移回恢复正确的行为,所以我并不完全震惊。
    【解决方案2】:

    我想自己解决一个类似的问题。

    我创建了一个类,并以某种方式将它保存在 Base.lproj 中。对于这个项目,我实际上并没有在那里创建任何其他文件,所以我不知道为什么它切换到保存在那里(但我可能在不同的项目中使用过 Base.lproj)。

    将源移回主文件夹,添加回项目,然后再移至目标,一切都恢复正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-02
      • 1970-01-01
      • 2019-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多