Android: Pivoter l'image dans ImageView par 90degrees mais sans tarder
Je suis en train de développer un jeu où un utilisateur doit taper sur l'image dans ImageView pour la faire tourner. Sur chaque robinet de l'image pivote de 90 degrés dans le sens horaire.
Mais l'image est de prendre le temps de rotation de l'ancienne à la nouvelle position. Cette nuit à l'expérience de jeu. J'ai utilisé les suivants:
protected void onCreate(Bundle savedInstanceState)
{
...
...
imgview = (ImageView)findViewById(R.id.imageView1);
imgview.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Matrix matrix = new Matrix();
matrix.postRotate(90);
Bitmap myImg = getBitmapFromDrawable(imgview.getDrawable());
Bitmap rotated = Bitmap.createBitmap(myImg,0,0,myImg.getWidth(),myImg.getHeight(),matrix,true);
imgview.setImageBitmap(rotated);
}
});
Je veux savoir est-il autre façon de faire pivoter l'image
sans créer de tout retard en rotation.
- Vous pouvez essayer ceci: [ANDROID::Rotation de l'image dans imageview par un angle][1] [1]: stackoverflow.com/questions/8981845/...
Vous devez vous connecter pour publier un commentaire.
J'ai aussi essayé de le faire une fois et je ne trouve pas d'autre solution, mais à l'aide de l'animation. Voici comment je ferais.
Vous n'avez pas besoin de faire pivoter l'objet, de la rotation de la vue devrait être suffisant.
Si vous visez l'API>=11, vous pouvez toujours le faire.
Acclamations.
onClick(){ counter++; imageView.setRotation(counter*90)};
Méthode courte
View.animate().rotation(90).setDuration(0);
avez-vous essayé d'utiliser un affichage personnalisé, l'extension de imageview et la rotation de l'image dans un thread d'arrière-plan?