Pour répéter une action toutes les X secondes, une technique consiste à créer une méthode qui appelle la méthode postDelayed d'un Handler et qui lui-même rappelle la méthode.
Le code est un peu étrange. L'endroit où est déclaré ta variable b aussi.
La façon dont c'est fait, je doute fort que le code s'exécute toutes les X secondes car à la fin tu appelles la méthode setContentView qui ne rappelle pas ton handler.
Regarde bien mon code. J'ai isolé tout ça dans une méthode qui est rappelée à chaque fois
Si tu n'es pas à l'aise avec le Java et les implémentation inline, je te conseille de mieux maîtriser le langage avant de vouloir faire des choses poussée avec et notamment de l'android.
public class MainActivity extends AppCompatActivity {
public int b=360;
private Handler myHandler;
private Runnable myRunnable = new Runnable() {
@Override
public void run() {
drawview a= new drawview(MainActivity.this);
a.setAngle(b);
setContentView(a);
b=b-10;
myHandler.postDelayed(this,2000);
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myHandler = new Handler();
myHandler.postDelayed(myRunnable,2000); // on redemande toute les 500ms
}
}
mais lorsque je lance l application l'imageview disparaiit je veux savoir comment dessiner ce cercle au dessus d'une photo
Je pense que ton image disparaît car tu changes le contenu de ton activité en appelant la méthode setContentView dans ton drawable. Pourquoi fais-tu ça ? Sais-tu a quoi sert cette méthode ?
Je te conseille de sérieusement te pencher sur le cours Android disponible sur le site
Je viens justement de te donner des indications tout en essayant de comprendre ton raisonnement...
Je pense que ton image disparaît car tu changes le contenu de ton activité en appelant la méthode setContentView dans ton drawable. Pourquoi fais-tu ça ?
Je ne comprends même pas comment ton code peut compiler. Sauf erreur de ma part, ta variable b n'est pas déclarée. Avant de t'aventurer dans des handler, etc, le mieux serait peut-être de procéder par étape. Par exemple :
affichage de l'image
modification de l'angle en appuyant sur un bouton
Une fois ça en place, tu pourras automatiser le traitement. Et pourquoi ajouter à ton layout un nouveau drawview à chaque fois plutôt que de modifier un élément existant ?
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Mon site - Mon livre sur le XML - Mon blog
mais je ne cherche pas ca je veux que l'angle diminue par 10 degres chaque seconde
Mon site - Mon livre sur le XML - Mon blog
Mon site - Mon livre sur le XML - Mon blog
Mon site - Mon livre sur le XML - Mon blog
Mon site - Mon livre sur le XML - Mon blog