Interface Builder没有看到MacRuby的出口

时间:2011-01-03 02:18:06

标签: ruby xcode interface-builder macruby

我正在尝试使用XCode和Interface Builder获得一个基本的hello world应用程序。但是,在Interface Builder中,我无法看到我的插座连接起来。我转到对象检查器窗格的连接选项卡,然后显示“New Referencing Outlet”。

我想知道我的代码是否错误。这是

class HelloWorldController 
    attr_accessor :hello_label, :hello_button, :hello

    def awakeFromNib 
        @hello = true
    end

    def changeLabel(sender) 
        if @hello
            @hello_label.stringValue = "Good Bye" 
            @hello_button.title = "Hello" 
            @hello = false
        else
            @hello_label.stringValue = "Hello World" 
            @hello_button.title = "Good Bye" 
            @hello = true
        end 
    end
end

据我所知,我应该可以看到hello,hello_label,hello_button和changeLabel,但我不知道。我想也许我曾在某处拼错,但这似乎也不是。以下是两个界面构建器窗口的镜头。

alt text

感谢任何帮助。我想我只是忽略了一些东西,但不确定。

更新:我通过重新安装OS X解决了这个问题。我怀疑存在问题,因为安装了X Code 4,不知道。但是,它现在可以全新安装OS X,X Code和MacRuby

6 个答案:

答案 0 :(得分:1)

我有类似的问题 http://www.mail-archive.com/macruby-devel@lists.macosforge.org/msg05331.html

通过重新安装XCode后重新安装MacRuby来修复它。

答案 1 :(得分:1)

如果您使用的是XCode 4.1或4.2,则无需重新安装,就像我刚刚做的那样 - 它现在真的被打破了。有关何时修复,请参阅this ticket,以及解决方法。

答案 2 :(得分:1)

如果您升级到Xcode 4.3+,则需要按照以下说明操作:

http://lldong.github.com/blog/2012/03/05/xcode-4-dot-3-macruby-compatible-problem-workaround/

它将带来你的Macruby项目模板并修复rb_nibtool

答案 3 :(得分:0)

安装的MacRuby附带文件和项目模板以及允许IB / Xcode将UI元素链接到MacRuby代码的工具,反之亦然。在某些情况下,升级Xcode或安装iOS SDK会破坏Xcode桥接,您需要重新安装MacRuby。请注意,如果Xcode4仅在MacRuby 0.10或更新版本中受支持。 (我今天刚刚在主干中编辑了Xcode 4模板,他们应该在几天内发布0.10版本。)

答案 4 :(得分:0)

此问题已在Xcode 4.2中解决。

答案 5 :(得分:0)

如另一个答案所示,Xcode 4.1有一个错误,即IB无法识别MacRuby类中的出口。它在Xcode 4.2中得到纠正。但是,如果升级到4.2,则必须重新安装MacRuby以便MacRuby出口重新开始工作。