2010-05-13 17 views

Trả lời

22

Tôi không chắc chắn tài liệu bạn đang đề cập đến (liên kết sẽ trợ giúp).

Bạn có thể sử dụng phương pháp -setRepresentedObject: của NSMenuItem để kết hợp một đối tượng tùy ý với một mục trình đơn:

//assume "item" is an NSMenuItem object: 

NSString* someObj = @"Some Arbitrary Object"; 

[item setRepresentedObject:someObj]; 
[item setAction:@selector(doSomething:)]; 

Sau đó, khi các mục trình đơn gửi thông điệp hành động của mình, bạn có thể có được các đối tượng:

- (IBAction)doSomething:(id)sender 
{ 
    NSLog(@"The menu item's object is %@",[sender representedObject]); 
} 
+0

Tôi không thể nhớ ra đầu của tôi là tài liệu gì, nhưng tôi đã kết thúc việc tìm ra điều này. –

+0

Câu hỏi ngớ ngẩn: Tại sao sử dụng representObject khi chúng ta chỉ có thể sử dụng tiêu đề NSMenuItem? –

+4

Bạn không nên sử dụng tiêu đề vì chúng có thể được bản địa hóa. Tốt hơn hết nên sử dụng '-representedObject' vì nó được thiết kế để lưu trữ dữ liệu tùy ý. –

Các vấn đề liên quan