如何将iOS Objective-C类别接口代码翻译成RubyMotion?
Objective-C使用“category”接口向现有类添加新方法:如何将iOS Objective-C类别接口代码翻译成RubyMotion?,ios,objective-c,rubymotion,Ios,Objective C,Rubymotion,Objective-C使用“category”接口向现有类添加新方法: @interface ClassName (CategoryName) @end 添加“hello”方法的示例: RubyMoon没有完全相同的“类别”或接口 RubyMotion代码如何提供类似的功能?RubyMotion具有类似的功能 使用典型Ruby重新打开类以添加方法: class XYZPerson def hello # return a string end end 如果您喜欢模块化代码,或
@interface ClassName (CategoryName)
@end
添加“hello”方法的示例:
RubyMoon没有完全相同的“类别”或接口
RubyMotion代码如何提供类似的功能?RubyMotion具有类似的功能 使用典型Ruby重新打开类以添加方法:
class XYZPerson
def hello
# return a string
end
end
如果您喜欢模块化代码,或者在多个位置使用相同的代码,可以使用Ruby模块:
module Hello
def hello
# return a string
end
end
class XYZPerson
include Hello
end
请注意,RubyMotion文件加载顺序很重要。例如,如果您多次定义同一方法,新定义将覆盖旧定义。您所有自答RubyMotion问题的意义是什么?@DarkDust One可以创建QnA类型的问题。这是值得鼓励的。然而,我不确定这个问题是否真的需要被问出来。帮助别人。据我所知,StackOverflow可以从更多RubyMoon信息中获益。对于这些问题和答案,有更聪明或更好的地方吗?@joelparkerhenderson这个地方很好。但不确定在其他语言中是否存在特定于客观C的模式。和关于API(Cocoa Touch)的内容。你想问和回答所有类型的Cocoa Touch API问题仅仅因为你在做RubyMoon而不是Objective-C吗?这个问题是关于语言特性的,它确实比其他两个更有趣。为了扩展您的评论,加载顺序在Objective C中也很重要,在Objective C中加载了order类及其类别,最新的实现需要。这有时被称为“未定义的行为”,尽管它是有定义的<代码>:-)
module Hello
def hello
# return a string
end
end
class XYZPerson
include Hello
end