我正在开发一个Rubymotion应用程序。我正在使用pod KNSemiModalViewController。 如何将这个Objective-C代码“翻译”成ruby?
[self presentSemiViewController:semiVC withOptions:@{
KNSemiModalOptionKeys.pushParentBack : @(YES),
KNSemiModalOptionKeys.animationDuration : @(0.3),
KNSemiModalOptionKeys.shadowOpacity : @(0.8),
}];
答案 0 :(得分:2)
你必须自己解决Ruby方面的事情,但是这行代码:
[self presentSemiViewController:semiVC withOptions:@{
KNSemiModalOptionKeys.pushParentBack : @(YES),
KNSemiModalOptionKeys.animationDuration : @(0.3),
KNSemiModalOptionKeys.shadowOpacity : @(0.8),
}];
与此相同:
NSDictionary *dict = [NSDictionary, dictionaryWithObjectsAndKeys:
[NSNumber numberWithBOOL:YES], KNSemiModalOptionKeys.pushParentBack,
[NSNumber numberWithFloat:0.3], KNSemiModalOptionKeys.animationDuration,
[NSNumber numberWithFloat:08], KNSemiModalOptionKeys.shadowOpacity];
[self presentSemiViewController:semiVC withOptions:dict];
假设KNSemiModalOptionKeys.pushParentBack
使用点符号执行方法,则每个方法都可以重写为[KNSemiModalOptionKeys pushParentBack]
。
希望这能让你在ObjC方面有足够的信息转化为Ruby(它非常擅长形成词典,IIRC)。
答案 1 :(得分:1)
self.presentSemiViewController(semiVC, withOptions:{
KNSemiModalOptionKeys.pushParentBack => true,
KNSemiModalOptionKeys.animationDuration => 0.3,
KNSemiModalOptionKeys.shadowOpacity => 0.8
})
答案 2 :(得分:-2)
我见过一个Sublime插件objc2rubymotion,从未尝试过。
有一个基于它的网页http://objc2rubymotion.herokuapp.com
从未尝试过,但它可能会帮助rubyists像我一样在iOS环境中崩溃:)