Jbay Posted May 26, 2011 Share Posted May 26, 2011 Bonjour bonjour, J'ai commencé le développement Android depuis peu, et j'aurais besoin d'un peu d'aide ^^ Voila, j'ai commencé une petite application (dans le style d'un porte feuille virtuel), où doit (au début) ajouter un solde; Pour être un peu plus explicite, voici un bout de mon code : public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case 1: LayoutInflater factory = LayoutInflater.from(this); View alertDialogView = factory.inflate(R.layout.addsolde, null); AlertDialog.Builder adb = new AlertDialog.Builder(this); adb.setView(alertDialogView); adb.setTitle("Ajout Solde"); adb.setPositiveButton("Ajouter", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { } }); adb.show(); Voila, donc, dans cet AlertDialog, j'ai mis un EditText qui ajoutera le solde. Ensuite, dans mon Main, j'ai un Textview qui montre le solde actuel. Donc, ma question (enfin ^^), c'est, comment mettre à jour ce solde ? Qu'il soit égal à la somme entrée dans l'EditText de l'AlertDialog . Si vous avez besoin de plus d'explications, y'a pas de soucis =) Merci =3 Link to comment Share on other sites More sharing options...
Android-User Posted May 26, 2011 Share Posted May 26, 2011 Salut, Si j'ai bien compris, c'est plus une sauvegarde de données qu'une transmission non ? Dans ce cas, enregistre les données du solde dans un fichier ou utilise simplement les "préférences" ? Voici comment enregistrer les données via les préférences : SharedPreferences data = getSharedPreferences("soldeData", MODE_PRIVATE); // Données enregistrées dans l'application. SharedPreferences.Editor prefEditor = data.edit(); prefEditor.putString("MonSolde", StringDataSoldeEditView); prefEditor.commit(); Ensuite dans ton activité Main, il faut récupérer les données : SharedPreferences Data = getSharedPreferences("soldeData", MODE_PRIVATE); String MonSolde = Data.getString("MonSolde", null); Ensuite on affiche la variable MonSolde ! Link to comment Share on other sites More sharing options...
Jbay Posted May 27, 2011 Author Share Posted May 27, 2011 J'ai inséré le code. Mais j'ai un soucis au niveau de "StringDataSoldeEditView" Eclipse m'indique une erreur :( Sinon, j'ai pensé a procéder autrement. Dans mon ItemMenu, il y a un Item "Plus" et un "Moins" pour les recettes et les dépenses, mais là encore, j'ai essayé plusieurs choses pour additionner (ou soustraire), la somme que l'on rentre dans l'Edit Text au TextView dans le Main ... En tous cas, merci de l'aide ^.^ Link to comment Share on other sites More sharing options...
Jbay Posted May 30, 2011 Author Share Posted May 30, 2011 J'ai réussi à bien comprendre le code, et Eclipse ne m'indique plus d'erreur. En revanche, le Solde affiché dans mon Main devrait être égal à l'EditText ... Donc ici, on a le menu d'insertion : case 3: factory = LayoutInflater.from(this); View alertDialogView3 = factory.inflate(R.layout.recette, null); AlertDialog.Builder adb3 = new AlertDialog.Builder(this); adb3.setView(alertDialogView3); adb3.setTitle("Crédit"); adb3.setMessage("Inscrivez le montant que vous voulez ajouter."); adb3.setPositiveButton("Ajouter", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { SharedPreferences data = getSharedPreferences("soldeData", MODE_PRIVATE); // Données enregistrées dans l'application. SharedPreferences.Editor prefEditor = data.edit(); prefEditor.putString("solde", editTextAdd.getText().toString()); prefEditor.commit(); } }); et l' onCreate : public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); TextView Solde = (TextView)findViewById(R.id.solde); SharedPreferences Data = getSharedPreferences("soldeData", MODE_PRIVATE); String MonSolde = Data.getString("solde", null); Solde.setText(MonSolde); } .. Je comprend pas pourquoi il n'y a pas l'update du solde :/ Link to comment Share on other sites More sharing options...
frozenscar Posted May 31, 2011 Share Posted May 31, 2011 Salut, avant d'essayer de récupérer le solde, essaie de récupérer ton editText. public void onClick(DialogInterface dialog, int which) { EditText editTextAdd = ( EditText ) findViewById(R.id.editTextAdd) ; SharedPreferences data = getSharedPreferences("soldeData", MODE_PRIVATE); // Données enregistrées dans l'application. SharedPreferences.Editor prefEditor = data.edit(); prefEditor.putString("solde", editTextAdd.getText().toString()); prefEditor.commit(); } ++ Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.