2009-11-17 7 views
6

Sabe que en muchas aplicaciones de Mac/iPhone (como su Buscador), cuando está arrastrando un ícono alrededor, todos los otros íconos se "repelerán" de su mouse y deje espacio para el ícono que está arrastrando.Diseño automático de "fuerza repelente" en Cocoa

Me pregunto si se trata de una función incorporada de Cocoa (en restricciones de diseño, etc.). Si no, ¿hay alguna biblioteca o documentos sobre cómo implementarla?

Respuesta

6

Si desea obtener más o menos de forma gratuita, use un NSCollectionView.

Si NSCollectionView no se ajusta a sus necesidades, es bastante fácil implementarlo con NSAnimation. Básicamente, la forma en que lo hace NSToolbar o NSCollectionView (por ejemplo) es averiguar dónde caería el icono que estás arrastrando si lo dejas ir, y envía los otros iconos a sus nuevas ubicaciones usando Core Animation para moverlos suavemente.

+0

Sí, pero ¿cómo calcular dónde mover cada icono? y ¿qué sucede si en esa posición, ya es otro ícono? –

Cuestiones relacionadas