Pregunta

Tengo una operación de arrastre que solo permite arrastrar un único archivo y quiero capturarlo en "draggingEntered" así:

- (NSDragOperation)draggingEntered:(id<NSDraggingInfo>)sender {
  if ([[sender draggingPasteboard] count]] == 1) {
    return NSDragOperationCopy;
  }
  else {
    return NSDragOperationNone;
  }
}

Pero contar no es un método o propiedad válido, pero no sé con qué reemplazarlo, entonces, ¿cuál es la mejor manera de ver cuántos elementos hay en el tablero de arrastre?¿Debo obtener la variedad de nombres de archivos en el tablero de arrastre usando algo como propiedadListForType:NSFilenamsPboardType, y luego obtener el índice de eso, ¿o hay una forma más inteligente de hacerlo?

¿Fue útil?

Solución

Si desea utilizar el recuento, debe utilizar pasteboardItems que es una matriz de elementos que responden al recuento.

Se puede hacer así:

- (NSDragOperation)draggingEntered:(id<NSDraggingInfo>)sender {

    if([[[sender draggingPasteboard] pasteboardItems] count] == 1) {
        return NSDragOperationCopy;
    }
    else {
        return NSDragOperationNone;
    }
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top