簡體   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