2011-12-21 26 views

Trả lời

51

"Trình tạo giao diện".

Trước Xcode 4, các tệp giao diện (XIB và NIB) đã được chỉnh sửa trong một chương trình riêng biệt có tên là Trình tạo giao diện, do đó tiền tố.

IBAction được xác định là voidIBOutlet không có gì. Chúng chỉ là manh mối cho Trình tạo giao diện khi phân tích cú pháp các tệp để làm cho chúng có sẵn cho các kết nối.

Chỉ cần thêm tài liệu tham khảo, bên AppKit/NSNibDeclarations.h bạn sẽ tìm thấy những:

#ifndef IBOutlet 
#define IBOutlet 
#endif 

#ifndef IBAction 
#define IBAction void 
#endif 

Vì vậy, trên thực tế, mã như thế này:

@interface ... 
{ 
    IBOutlet NSTextField *label; 
} 
- (IBAction)buttonPressed:(id)sender; 
@end 

sẽ được chuyển đổi thành:

@interface ... 
{ 
    NSTextField *label; 
} 
- (void)buttonPressed:(id)sender; 
@end 

Bằng bộ xử lý trước, ngay cả trước khi trình biên dịch nhìn thấy nó. Những từ khóa đó hoạt động giống như manh mối cho Trình tạo giao diện.

+3

Chỉ cần thêm, 'IBAction' là' void'. Đó là một thứ đánh dấu để Trình xây dựng giao diện có thể xem mã phương thức nào cho thấy các kết nối đến các nút và các điều khiển khác. Không chắc chắn về 'IBOutlet', nhưng tôi chắc chắn nó tương tự như' IBAction' để Trình xây dựng giao diện có thể xem điều khiển nào nó có thể kết nối với mã đó. – Eimantas

+1

Công cụ này vẫn được gọi là Interface Builder; nó không còn tồn tại như một ứng dụng riêng biệt nữa. Xấu hổ, bởi vì tôi thực sự yêu mến biểu tượng. – BoltClock

+0

@Eimantas Tôi đã chỉnh sửa câu trả lời để tạo ghi chú trong những lúc này khi bạn viết bình luận :-) cảm ơn vì đã trỏ nó quá – sidyll

4

IB là viết tắt của trình tạo giao diện, khi bạn kết nối các đối tượng thông qua trình tạo giao diện.

0

IBAction và IBOutlet là giao diện Builder Constants IBOutlet: Một lớp Controller có thể tham chiếu đến đối tượng trong tệp nib sử dụng hằng số đặc biệt gọi là IBOutlet.

IBActions: Các đối tượng giao diện trong tệp nib có thể được đặt để kích hoạt các phương thức cụ thể trong lớp điều khiển bằng cách sử dụng IBAction làm kiểu trả về của phương thức.