glisser et déposer de uitableviewcell à uiimage voir dans ios

J'ai besoin d'aide pour mettre en place un geste de glisser-déposer, je voudrais connaître votre opinion pour find la meilleure approche.

J'ai un controller de vue avec un uitableview sur la droite et quelques vues d'image sur la gauche.

Je voudrais permettre à l'user de faire glisser chaque cellule de la vue de la table sur l'une des vues de l'image. Fondamentalement, le glisser-déposer échouera si la cellule n'est pas libérée sur l'une des vues de l'image, sinon la vue de l'image changera l'image en fonction de la cellule abandonnée.

Que pensez-vous être le meilleur moyen d'y parvenir?

En outre, lorsque l'user commence à faire glisser, je voudrais qu'il traîne autour d'une sous-vue en forme particulière, avec l'image et datatables, ne pas faire glisser la cellule semi-transparente.

Merci,

Les étapes de base pour cela seraient:

  • Ajoutez un outil de reconnaissance des gestes de pression longue à votre vue de table (l'set de la vue, pas les cellules individuelles)
  • Lorsque le geste commence, searchz la cellule sur laquelle il se trouve (convertissez le point, puis l'user indexPathForRowAtPoint pour get la cellule)
  • Faites une copy de cette cellule qui deviendra la vue déplacée (prenez un instantané, ajoutez-le à un UIImageView et ajoutez-le à votre vue principale). Ou vous pouvez faire en sorte que la vue ressemble à ce que vous voulez si vous ne voulez pas qu'elle ressemble à la cellule
  • rendre votre cellule d'origine cachée pour qu'elle semble être traînée
  • Lorsque le geste est modifié, déplacez la position de cette vue d'image en fonction de la localization du mouvement)
  • Une fois le geste terminé, vérifiez si la cellule est au-dessus d'une image (hitTest: pour cela) et faites les animations ou les calculs dont vous avez besoin.