2011-07-18 2 views
1

J'utilise un IKImageBrowserView pour une application mac que je suis en train de développer et je souhaite activer le glisser dans IKImageBrowserView. J'ai donc utilisé – setAllowsDroppingOnItems: mais malheureusement cela ne me permet pas de spécifier quels éléments sont éligibles comme destination de dépôt. la première partie de la question serait de savoir s'il existe un moyen simple et direct de le faire.Comment activer le glisser sur des éléments spécifiques d'un IKImageBrowserView?

J'ai cherché la documentation et est venu avec une manière qui consiste à utiliser la méthode déléguée de glisser - (NSDragOperation)draggingUpdated:(id < NSDraggingInfo >)sender

NSUInteger index = [browserView indexOfItemAtPoint:sender.draggingLocation]; 
    if(index != NSNotFound) 
    { 
     WCItemObject *browserCell = (WCItemObject *)[self.items objectAtIndex:index]; 

     NSLog(@"%@", browserCell.path); 
    } 

Logiquement, cela devrait fonctionner, mais ce n'est pas. Il ne donne que l'objet correct s'il y a peu d'éléments (pour ne pas afficher le défilement vertical) ce qui me porte à croire que indexOfItemAtPoint ne tient pas compte de la vue défilement, donc je pourrais avoir besoin de le surcharger si c'est le cas la question) comment dois-je le faire.

Répondre

0

Je l'ai fonctionné en utilisant indexAtLocationOfDroppedItem (une méthode de IKImageBrowserView) qui, à partir du nom et de la documentation, sonne comme si seulement les mises à jour après la chute se produisaient, mais se mettait à jour.

Questions connexes