如何将iOS Objective-C类接口代码翻译成RubyMotion?

时间:2014-08-11 20:18:08

标签: ios objective-c rubymotion

Objective-C使用“类别”接口向现有类添加新方法:

@interface ClassName (CategoryName)
@end

添加“hello”方法的示例:

@interface XYZPerson (HelloWorld)
- (NSString *)hello;
@end

RubyMotion没有“类别”,也没有相同的接口。

RubyMotion代码如何提供类似的功能?

1 个答案:

答案 0 :(得分:1)

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文件加载顺序很重要。例如,如果您多次定义同一方法,则新定义将覆盖旧定义。