在Interface Builder和XCode中连接UILabel?
我想要做一些简单的事情,就像在XCode和IB中向视图添加标签一样,我无法弄清楚如何去做。我在网上找到的所有样本都是针对较早版本的IB,因此方向不正确。在Interface Builder和XCode中连接UILabel?
我的.xib文件上有一个标签,在我的Controller.h文件中,我有一个IBOutlet UILabel声明了Property的设置。
在我的Controller.m文件中,我合成了Property。
在Interface Builder中,我不能为我的LIFE弄清楚如何将我的代码中的标签与.xib上的Label关联起来。 每当我尝试拖动连接到文件的所有者,唯一显示的选项是“查看”。
如果我在界面生成器的库窗口下查看控制器,标签显示为出口下的UILabel。我很确定它曾经是一个“id”类型,但它自动显示为UILabel,如果我尝试添加一个“id”,它也不起作用。
有人能指点我来解释这个愚蠢的事情吗?使标签具有文字应该不是很难。
假设你的视图叫做ExampleView。点击文件拥有者,然后按⌘+ 4。这将突出显示身份框。确保班级名称与班级名称相同。
保存并关闭Interface Builder中,然后进入Xcode和验证:
// ExampleViewController.h
#import <UIKit/UIKit.h>
@class ExampleViewController;
@interface ExampleViewController : UIViewController {
IBOutlet UILabel *label;
}
@property (retain, nonatomic) IBOutlet UILabel *label;
@end
在您.m文件:
// ExampleViewController.m
#import "ExampleViewController.h"
@implementation ExampleViewController
@synthesize label;
然后保存的Xcode文件,并打开你的ExampleView。将标签拖到视图上。您不应该将该标签连接到“文件”所有者。
如果您不点击文件夹, HIT⌘+ 2这将打开连接框。那么你会看到你的出路。点击并将其连接到您的标签。
使用这种技术看起来好像它会起作用,但现在当我尝试加载该视图时,我得到一个“SIGABRT”错误,该消息是“该类不是关键值编码 - 关键的cardNameLabel”。 – 2010-09-30 01:07:28
我注意到你的代码中有一个错误... 在你的.H文件....你应该添加IBOUTLET属性后(保留,非原子)IBOUTLET uilabel * cardnamelabel。你只是wronte财产(保留,非原子)uilabel * cardNamelabel。这不是一个iboutlet – Pavan 2010-09-30 01:10:46
我改变了我的代码来使用你的,除了**,是必需的,在这个世界是什么? – 2010-09-30 01:11:33
确保您的财产线是这样的:
@property (nonatomic, retain) IBOutlet UILabel *label;
离开(或设置)标签的类型在Interface Builder UILabel
。如果这不起作用,请尝试文件 - >重新加载界面生成器中的所有类文件。你的代码看起来不错,但CardNameLabel应该以小写'c'开头。
声明你的UILabel作为一个属性是可选的。 – 2010-09-30 00:59:32
试试这个:点击文件的所有者图标来选择它,并转到督察的身份标签(4片),并检查Class
设置的值。我的猜测是,它现在设置为UIViewController
。
由于有IBOutlet
你宣称类是(或者应该是)的UIViewController
一个子类,你需要的类名更改为子类的名称(例如,MyController
,或无论它目前的名字命名) 。
假设你有一个viewController和一个有这个UILabel的xib文件。要连接的步骤的UILabel(也是厦门国际银行文件)您的viewController是:
1)在头文件,为它创建
IBOutlet UILabel *label;
@Property (Nonatomic, retain) IBOutlet UILabel *label;
的UILabel对象和属性,并在synchthesize它实现文件
2)在Interface Builder中打开XIB文件
的“文件的所有者”,然后在弹出窗口下拉列表中选择的viewController连接您的厦门国际银行双击文件到控制器
3)用鼠标右键单击文件的所有者,在弹出的对话框:
- 点并拖动旁边的毛毛(+)“查看”,将其放到查看排
- 点和阻力毛绒(+)旁边的“标签”,并将其放在标签上查看
=>现在的标签和连接到您XIB文件视图控制器
请张贴Controller.m或者和.h文件 – ennuikiller 2010-09-30 00:45:58
PackViewController.h:http://pastebin.com/ DesS8j50 PackViewController.m:http://pastebin.com/jasum3SB – 2010-09-30 00:59:16
他没有任何问题声明iboutlet。他只需要正确连接它。 Hes试图将标签连接到仅显示VIEW的实际文件所有者图标。 如果你只是看看我发给你的信息,我写了一堆代码,它和pselus一样,但这只是为了确保你正确地书写代码。然后我们进入interfacebuilder,我解释你需要在帖子中做什么。检查下面。谢谢 PK – Pavan 2010-09-30 01:02:06