我有一个扩展SKScene的Menu类,但我无法访问视图,这是SKScene的一个属性。相反,我收到以下错误:“实例成员'视图'不能用于类型菜单。”
我需要做些什么特别的访问吗?似乎应该已经可以调用它了。
以下是该课程的缩短版本:
pry(#<Overrides::RegistrationsController>)> @resource
=> #<User id: nil, provider: "email", uid: "", first_name: "John1", last_name: "Doe1", email: "c0f45@example.com", role: "Student", created_at: nil, updated_at: nil, groups: {"data"=>[{"serie"=>5, "year"=>3, "specialization"=>"Matematica", "management_id"=>1, "group_number"=>2}, {"serie"=>5, "year"=>3, "specialization"=>"Matematica", "management_id"=>1, "group_number"=>2}]}>
问题出在最后一行。在它上面我评论了一个不同的尝试,但这也没有用。
答案 0 :(得分:2)
您必须注意实例方法和类型方法之间的区别。在特定类型的实例上调用实例方法。你可以像这样定义它们:
class SomeClass {
func myInstanceMethod() {
}
}
类型方法,是在类型本身上调用的方法。您可以使用static
关键字定义它们,或者在示例中使用class
关键字(类关键字允许子类覆盖超类的该方法的实现)。
因此,简而言之,您应该使用实例方法,因为self在您的情况下引用当前实例,而不是Menu类型(只需删除class关键字)。