2011-09-16 48 views
0

我正在使用NSPasteboardWriting協議在NSPasteboard上編寫自定義對象。 如何爲自定義對象創建UTI?NSPasteboard上的自定義對象

- (NSArray *)writableTypesForPasteboard:(NSPasteboard *)pasteboard { 

static NSArray *writableTypes = nil; 
if (!writableTypes) 
{ 
    writableTypes = [[NSArray alloc] initWithObjects:[FileSystemItem class], nil]; 
} 
NSLog(@"writable%@", writableTypes); 
return writableTypes; 

} 

- (id)pasteboardPropertyListForType:(NSString *)type { 
NSLog(@"type = %@", type); 
return type; 
} 

FileSystemItem是我的自定義類。以上兩種方法是否正確?

回答

3

你不「創建」一個UTI。你只需要在你需要的地方使用同一個。

標準紙板UTI格式爲:

com.mycompany.myapp.mypasteboardtype 
+2

值得注意的是:一切有要填寫的佔位符,包括「COM」。如果你的域名是「example.org」,那麼你的UTI應該是「org.example.myapp.mypasteboardtype」。另請注意,您只應爲自己的自定義類型執行此操作,而不是您支持的現有類型。 –