如何获取对 .nib 文件中对象的引用?
Posted
技术标签:
【中文标题】如何获取对 .nib 文件中对象的引用?【英文标题】:How to get a reference to an object in a .nib file? 【发布时间】:2012-05-15 14:46:09 【问题描述】:到目前为止,我已经在代码中完成了大多数视图编程,但是在代码中完美定位按钮确实很麻烦。我搜索了一段时间,也许我在搜索时使用了错误的词?无论如何,我在一个 nib 文件中创建了一个 UI,它有几个按钮。我像这样将 .nib 文件加载到我的视图中:
NSArray* nibViews = [[NSBundle mainBundle] loadNibNamed:@"UCMenuView" owner:self options:nil];
UIView *menuView = [nibViews objectAtIndex:0];
self.delegate = (id<UCMapviewDelegate>)delegate;
// another controller does the view switching, so I'm sending him the view
[self.delegate pushView:menuView];
这很好。但我不明白如何获得指向按钮的指针。我知道 IBOutlet,但是如何将它们连接到 .nib 中的元素?我将如何连接这个@property (strong, nonatomic) IBOutlet UIButton *calendar;
到 .nib 中的特定按钮?
我尝试按 ctrl-drag(从 @property 左侧的那个小点,但这不起作用(从任何一方)。如果这是一个简单的问题,请原谅,但我找不到解释清楚
感谢您的帮助
【问题讨论】:
【参考方案1】:-
不仅仅是
UIView *menuView
,您需要创建一个自定义
UIView 子类,例如UCMenuView
。在此自定义上定义您的属性
类。
在编辑器中打开您的 .xib 文件,选择 File's Owner
左列并在标识中设置其 Custom Class
检查员到UCMenuView
。
右击左侧栏中的File's Owner,然后连接
您的 IBOutlets。
【讨论】:
我猜这个类必须继承自 UIView?【参考方案2】:查看本教程: http://developer.apple.com/library/ios/#documentation/IDEs/Conceptual/Xcode4TransitionGuide/InterfaceBuilder/InterfaceBuilder.html 或者 http://www.hongkiat.com/blog/ios-development-guide-part2-your-first-app/
亲切的问候, 博
【讨论】:
【参考方案3】:请参阅 Apple 的文档:Creating and Connecting an Outlet 以及更普遍的 Designing User Interfaces in Xcode。
【讨论】:
链接已损坏以上是关于如何获取对 .nib 文件中对象的引用?的主要内容,如果未能解决你的问题,请参考以下文章