2011-05-29 53 views
2

在某些时候,我由于某种原因从XIB中删除了Object到我的appdelegate文件。我添加了一个新对象,并选择MyAppNameDelegate作为类。但是,它没有连接到文件所有者,并且在右击和拖动时似乎没有选项。我认为这造成了一些运行时问题。有任何想法吗?将文件所有者连接到应用程序代理

回答

5

如果你指的是你的MainMenu,该文件的所有者是一个类型的NSApplication的对象。

在IB,您应该选择文件的所有者,访问它的“代理”的出口,将其拖动(以画线)到应用程序委托。这将恢复连接。

检查也是文件的所有者已经拿到了的NSApplication类的类型。也许它以某种方式变了。

+0

我的应用程序被称为SimpleContacts,为实践制作了一个非常简单的干式联系人管理应用程序。我删除的XIB中的对象称为“简单联系人应用程序委托”。我加回来并将它连接到SimpleContactsAppDelegate.h没有问题。但是,它也没有委托给xib中的文件所有者。我可以在我之前构建的新应用程序中看到,这两个应用程序默认连接。 – agmcleod 2011-05-29 21:05:51

+0

请看看我的编辑...希望它有帮助。 – sergio 2011-05-29 21:09:55

+0

感谢您的建议,但这是很奇怪的事情。该选项甚至不存在。我想知道我是否缺少某种设置。我把我的最新变化推到了github上:https://github.com/agmcleod/SimpleContacts/tree/parttwo/SimpleContacts – agmcleod 2011-05-29 21:13:02

1

这也让我疯了。

我在上面标记+1,答案实际上有帮助,答案是神秘的,所以这将有助于更详细地解释如何获取委托或其他连接,这些连接不会直接使用“助理编辑器“视图。

右键点击=控制键+左键点击。

IN XCode 4.选择您的任何XIB文件。对于你添加的UIScrollView来说,你想为它设置Delegate。与之前的IB不同,您只需打开连接检查器,然后将连接拖至文件。其实在这里也是一样的。但有区别。

(注意:该基座是面板2从左侧只有具有开放XIB) 打开停靠>http://developer.apple.com/LIBRARY/IOS/#documentation/ToolsLanguages/Conceptual/Xcode4UserGuide/InterfaceBuilder/InterfaceBuilder.html

有一个在基座底部的小三角形箭头那里。

在码头的最顶端是“文件的所有者”,不开码头,它是白盒与橙色装饰。右键单击并拖动“New Referencing outlet”上的连接到Docks“Files Owner”,然后一个列表将会被选中弹出。

像明智的,你可以用鼠标右键点击“文件的所有者”,并删除连接容易出现,或结交新朋友。 Dock Opened and Connecting the Delegate for UIScrollView

4

我有同样的问题。我在不同的线索上找到了很多答案,所以我决定把它们放在一起。

  1. 将来自对象一个NSObject实例调色板到您的厦门国际银行的对象下面列出了“对象”的区域(左下方点击三角形,如果你不能看到它)的的MainWindow.xib 。该物体应显示为一个坚实的橙色框。
  2. 选择这个新创建的NSObject,并使用Identity Inspector将其类更改为新的App Delegate的名称(不管文件名是.h或.m)。这应该是弹出式列表中的一个选项。
  3. 控制 - 从文件所有者拖动到不应显示为“应用程序委托”的新对象,然后选择委托。
  4. 您可能还需要将窗口(以及其他可能的视图)重新连接到新的代表。通过从App Delegate拖动到窗口并选择窗口来完成此操作。

希望这会有所帮助。

+0

只是浪费了我生命中10个小时得到一个图标显示在OS X 10.10状态栏。从这里有一千艘快艇。 – qff 2015-04-25 23:03:50