2011-04-27 1 views
1

Maintenant, je fais un puzzle. vouloir faire correspondre la paire correcte par des points. Supposons que si nous connectons une paire de mésappariement, elle souhaite afficher une alerte et supprimer automatiquement les lignes tracées. Maintenant toutes les fonctionnalités sont terminées sauf une chose. Je n'ai aucune idée de retirer Ligne dessinée (automatiquement).Comment faire pour supprimer Drawn Line dans Android

Est-ce possible sur Android? Existe-t-il une méthode disponible pour supprimer drawline.

Répondre

1

Dessinez-vous des lignes en utilisant Canvas.drawLine? Il n'y a rien de tel dans l'API pour "supprimer la ligne tracée".

Je peux imaginer deux options:

  • Dessiner la même ligne en utilisant à nouveau la couleur d'arrière-plan « effacer »
  • redessiner tout l'écran à nouveau, mais sans lignes de dessin cette fois
+0

Merci pour votre réponse. si la couleur d'arrière-plan est la même, cela signifie que mais mon thème de fond contient des couleurs variées. Dans ce je ne peux pas dessiner la même ligne en utilisant la couleur de fond. Y a-t-il une autre option? –

+1

@Mobila dessine de nouveau tout l'écran. vous devrez peut-être jeter un coup d'œil à la mise en œuvre de la double mise en mémoire tampon, mais il y a beaucoup d'articles sur le Web à ce sujet. –

0

Comme mentionné ci-dessus il n'y a aucun moyen d'enlever la ligne tracée. Comment pouvez-vous faire ce qui suit: 1) Faites une copie de l'image originale (image originale = img1; duplicate = img2), en utilisant Bitmap.copy. Copiez-le dans Config.ARGB_8888 ce qui le rend modifiable. 2) Tracez des lignes sur l'image nouvellement créée en utilisant canvas.drawLine() 3) Lorsque vous voulez revenir à votre ancienne image sans lignes, affichez img1 et recyclez img2.

Toutefois, cela ne fonctionne que si votre image ne prend pas beaucoup de RAM, auquel cas vous faites tout sur la même image et le téléchargement d'une nouvelle copie lorsque vous voulez revenir en arrière serait l'option idéale.

Questions connexes