我可以使用Interface Builder构建RubyMotion应用程序吗?

Ale*_*eer 22 interface-builder ios rubymotion

Ruby Motion刚刚问世,而截屏视频似乎没有说明是否可以使用Interface Builder构建接口并将它们集成到RubyMotion项目中.这样的事情可能吗?或者我真的手动编写所有代码,更不用说维护iPhone/iPad的不同代码了吗?

我的代表不够高,无法创建rubymotion标签,所以请在适当的时候帮忙.

Nic*_*uen 38

我只想指出RubyMotion 1.3现在支持自动编译.xib放入resources文件夹的文件.所以现在工作流程变成:

  1. .xib使用XCode 创建文件(无需创建项目,只需使用File | New ... | File)并将其保存到resources文件夹中.由于尚不支持出口,请小心为tag要在代码中使用的每个控件设置属性(您可以在"视图"标题下的每个组件的属性表中找到).
  2. RubyMotion将负责将您的.xib文件编译成.nib文件,所以尽情享受:)
  3. UIViewController派生类中,使用加载nib loadNibNamed:owner:options:,如下所示.
  4. viewDidLoad,使用viewWithTag:并使用添加事件处理程序来获取各种组件addTarget:action:forControlEvents:,如下所示.
  5. 作为奖励,下次你想编辑你的xib时open resources/MyView.xib,它只会启动XCode的好部分.

    class CalculatorViewController < UIViewController
        def loadView
            views = NSBundle.mainBundle.loadNibNamed "Keyboard", owner:self, options:nil
            self.view = views[0]
        end
    
        def viewDidLoad
            button = view.viewWithTag 1
            button.addTarget self, action:'buttonTapped:', forControlEvents:UIControlEventTouchUpInside
        end
    
        def buttonTapped(button)
            # ...
        end
    end
    
    Run Code Online (Sandbox Code Playgroud)


dmi*_*7b5 6

是的,您可以在RubyMotion中使用Interface Builder.

位于资源目​​录中的.xib文件会自动编译为.nib文件,并可供您的项目使用.

如果你这么倾向,甚至有办法支持网点:

https://github.com/yury/ib#readme
http://ianp.org/2012/05/07/rubymotion-and-interface-builder/