繁体   English   中英

在 Interface Builder 和 XCode 中连接 UILabel?

[英]Connect a UILabel in Interface Builder and XCode?

我正在尝试做一些简单的事情,例如在 XCode 和 IB 中向视图添加标签,但我不知道该怎么做。 我在网上找到的所有示例都是针对旧版 IB 的,因此说明不正确。

我的 .xib 文件上有一个标签,在我的 Controller.h 文件中,我有一个 IBOutlet UILabel 声明了一个属性设置。

在我的 Controller.m 文件中,我合成了该属性。

在 Interface Builder 中,我终生无法弄清楚如何将代码中的标签与 .xib 上的标签相关联。 每当我尝试将连接拖动到文件所有者时,唯一显示的选项是“查看”。

如果我查看 Interface Builder 的 Library Window 下的 Controller,标签在 Outlets 下显示为 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 这将打开连接框。 然后你会看到你的插座。 单击并将其连接到您的标签。

确保您的财产线如下所示:

@property (nonatomic, retain) IBOutlet UILabel *label;

在 Interface Builder 中将标签的类型保留(或设置)为UILabel 如果这不起作用,请尝试 File -> Reload All Class Files in Interface Builder。 您的代码看起来不错,但 CardNameLabel 应该以小写的“c”开头。

试试这个:单击 File's Owner 图标将其选中,然后转到 Inspector's Identity 选项卡(第四个选项卡)并检查Class设置的值。 我的猜测是它当前设置为UIViewController

由于具有您声明的IBOutlet的类是(或应该是) UIViewController的子类,因此您需要将类名更改为您的子类的名称(例如, MyController或它当前命名的任何名称)。

假设您有一个 viewController 和一个包含 UILabel 的 xib 文件。 连接 UiLabel(也是 xib 文件)你的 viewController 的步骤是:

1) 在头文件中,为其创建 UiLabel 对象和属性

IBOutlet UILabel *label;

@Property (Nonatomic, retain) IBOutlet UILabel *label;

并将其同步到实现文件中

2) 在 Interface Builder 中打开您的 xib 文件

双击“文件所有者”,然后在弹出窗口的下拉列表中选择 viewController 将您的 xib 文件连接到控制器

3) 右键单击​​文件所有者,在弹出对话框中:

  • 指向并拖动“查看”旁边的毛绒 (+) 并将其放在“查看”行上
  • 指向并拖动“标签”旁边的毛绒 (+) 并将其放在视图上的标签上

=> 现在标签和 xib 文件上的视图已连接到您的控制器

以下是快速将 UILabel 连接到故事板的方法:

  1. 单击图标 Xcode 中的图标。 如果您使用的是旧版本的 Xcode,请使用窗口右上角的维恩图。

  2. 使用顶部的栏,在文件查看器的一侧选择故事板,在另一侧选择视图控制器。

  3. 按下 control,单击您要为其创建 IB Outlet/Action 的 UI 元素,然后将其拖到 View Controller 文件中: 在此处输入图片说明
  4. 为您的 IBOutlet/Action 选择您的偏好: 在此处输入图片说明

您已成功将故事板元素链接到您的代码。

您可以按照本教程观看有关如何将故事板元素连接到代码的视频。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM