Aller au contenu

Il faut taper 2fois sur un bouton pour avoir un résultat[VIDEO AJOUTEE][HELP]


androniennn

Recommended Posts

Bonsoir,

J'ai presque fini mon petit projet, mais, je rencontre un problème un peu bizarre:

J'ai un bouton qui me permet de calculer une opération puis de sauvegarder le résultat dans un fichier, en effet, il faut que je tape 2 fois sur le bouton pour que le résultat s'enregistre puis s'affiche dans une ListView! Si je tape une seule fois, et que j'accède dans les enregistrements, il m'indique qu'il y a aucun fichier à afficher ! Bizarre !

voila le code:

public void calcul ()
{
context = getApplicationContext();
  final EditText vol;
  final EditText kil;
  final EditText cons;

  vol = (EditText) findViewById(R.id.volume2);
  kil= (EditText) findViewById(R.id.kilometrage2);
  cons= (EditText) findViewById(R.id.consom2);
  data = "";
 final Button button = (Button) findViewById(R.id.button);

 button.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
       	 String value1 = vol.getText().toString();
            String value2 = kil.getText().toString();

    if (value1 != null && value1.trim().length() > 0 && value2 != null && value2.trim().length() > 0)
                        {
                                float q1=Float.parseFloat(vol.getText().toString());
                                float q2=Float.parseFloat(kil.getText().toString());
                                float x=((q1 / q2)* 100);
                                String y= Float.toString(x);
                                cons.setText(y);

                                SimpleDateFormat format = new SimpleDateFormat("dd/MM");
                				  String date = format.format(new Date());
                				  data = date + " : " + y + "L/100KM"+ " " + value1 + "L "+ value2 + "KM\n";
          SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
         if (data != "" ) {
         String fileName = getResources().getString(R.string.fileName);
         String fileDir = ""+ preferences.getString("login", "") + "."+ preferences.getString("marque", "") + ".";
         myIO.WriteSettings(context, fileDir + fileName, data);
         data = "";

         Toast.makeText(carburant.this, "Donnée ajoutée!", Toast.LENGTH_SHORT).show();
               					}

                        }
                        else 
                        {
                        Toast.makeText(carburant.this, "Veuillez vérifier les deux champs", Toast.LENGTH_SHORT).show();
                        }
        }
  });	 

Video: http://www.4shared.com/video/Tdps8spN/problem.html

J'ai remarqué aussi une chose, le bon résultat(affichage du résultat de l'op dans la listview) se fait en nombre pair, c'est à dire la 1ère fois ça marche pas(pas de données à afficher), la 2ème ça marche(les données sont affichées et la dernière donnée est ajoutée!), la 3ème ça marche pas, la 4ème ça marche.....

Merci de votre aide :).

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...