Je gère une opération de glisser-déposer sur un IKImageBrowserView. Dans mon délégué de destination glisser-déposer, j'accepte les gouttes NSFilenamesPboardType. La partie bizarre est que les chaînes de chemin de fichier que je récupère commencent toutes par "/ Users/..." au lieu de "file: // localhost/..." comme je le fais quand j'utilise un NSOpenPanel. Lorsque je les convertis en NSURL pour l'utilisation par IKImageBrowserView pour afficher des images, il devient confus car il ne comprend que les chemins complets commençant par "file: // localhost/...". Je peux pirater le préfixe, comme je l'ai fait dans l'extrait ci-dessous, mais je me demandais s'il y avait une manière programmatique d'obtenir des chemins complets à la place?Pouvez-vous obtenir des chemins complets à partir de la table de montage lorsque vous faites glisser et déposer?
if ([[pasteboard types] containsObject:NSFilenamesPboardType])
{
NSData* data = [pasteboard dataForType:NSFilenamesPboardType];
if (data)
{
NSString* errorDescription;
NSArray* filenames = [NSPropertyListSerialization
propertyListFromData:data
mutabilityOption:kCFPropertyListImmutable
format:nil
errorDescription:&errorDescription];
for (id filename in filenames)
{
NSURL* url = [NSURL URLWithString:[NSString stringWithFormat:@"file://localhost%@", filename]];
NSLog(@"Adding URL: %@", url);
Merci, ça a bien fonctionné – evilfred