0
CocoaアプリケーションでiTunesからドラッグされた行を受け入れるにはどうすればよいですか?iTunesの行をCocoaアプリケーションにドラッグ
ドラッグアンドドロップを受け入れるアプリケーションには、NSTableViewとカスタムビューの2つのオブジェクトがあります。どちらもFinderからドラッグされたファイルを認識しますが、iTunesからドラッグされた行は認識しません。
CocoaアプリケーションでiTunesからドラッグされた行を受け入れるにはどうすればよいですか?iTunesの行をCocoaアプリケーションにドラッグ
ドラッグアンドドロップを受け入れるアプリケーションには、NSTableViewとカスタムビューの2つのオブジェクトがあります。どちらもFinderからドラッグされたファイルを認識しますが、iTunesからドラッグされた行は認識しません。
さて、ここに答えがあります。これは、iTunesからのドラッグやファインダーからのファイルのドラッグを処理します。あなたが得るのは、ファイルパスのリストです。 「送り主」は、ドラッグペーストボードを持っている人です。簡単な答えは、 "com.apple.pasteboard.promised-file-url"がiTunesペーストから必要とするキーであることです。
NSMutableArray *paths = [NSMutableArray arrayWithCapacity:1];
NSArray *pasteboardTypes = [NSArray arrayWithObjects:@"com.apple.pasteboard.promised-file-url", @"public.file-url", nil];
for(NSPasteboardItem *item in [[sender draggingPasteboard] pasteboardItems]) {
NSString *urlString = nil;
for(NSString *type in pasteboardTypes) {
if([[item types] containsObject:type]) {
urlString = [item stringForType:type];
break;
}
}
if(urlString) {
NSString *path = [[NSURL URLWithString:urlString] path];
[paths addObject:path];
}
}
NSLog(@"Pasted Paths: %@", paths);
iTunesの行から正確に何をしたいですか?メディア、タイトル、... – spudwaffle
ファイルパス。私は答えがありますが、私は平凡な評判のスコアのためにそれをさらに5時間転載することはできません。 – Colin