• Home
  • Youzik
  • Papystreaming
  • Darknet
  • Libertyland
  • Cacaoweb
  • GG maps
  • Yggtorrent
  • Zone téléchargement

Grimag

  • Accueil
  • Catégories
    • Smartphone
    • High Tech
    • Business
    • Web
    • Appli Jeux Vidéo
    • Shopping
  • Android c’est quoi ?
  • Nous Contacter
  • Nos comparatifs
    • Drone avec caméra
    • Clavier d’ordinateur
    • Onduleur
    • GPS
    • Répéteur WiFi

Développez une application pour android étape 14 (Récupérer les info de ma boite de dialogue)



Dans cette étape 14 je vais récupérer les différents informations saisies dans ma boite de dialogue pour remplir ma textarea ingredient.
Je reviens vite fais sur l’achitecture de ma base de donnée, nous avons:
la table recette_larecette dans laquelle j’enregistre la préparation,
la table recette_condiment où j’indexe les ingredients
et la table recette_contenu qui fait le lien entre la recette, les ingredients et l’unité de mesure.
Ce systeme nous servira plus tard pour le calcule de la liste de course.
Tous ça pour dire que le format des ingredients dans le textarea sera de format quantité,unité de mesure , ingredient \n(Retour à la ligne);

D’abord ma classe Myclassdialog

public class Myclassdialog extends Dialog  implements OnClickListener{
	
	private Button  okButton;

	private Button   cancelButton;
	private Context  lecontext;
    private ReadyListener readyListener;
	
	 public interface ReadyListener { 
         public void ready(String text); 
    } 
	
	public Myclassdialog(Context context, ReadyListener readyListener) {
		super(context);
		lecontext = context;
		this.readyListener = readyListener;
		}
	
	/**
	* @see android.app.Dialog#onCreate(android.os.Bundle)
	*/
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		Log.d("TestApp", "Dialog created");
			setContentView(R.layout.choixingredient);			
			okButton = (Button) findViewById(R.id.btvalingre);
			cancelButton = (Button) findViewById(R.id.btquitter);			
			okButton.setOnClickListener(this);
			cancelButton.setOnClickListener(this);					
	}
	
	public void onClick(View view) {
		switch (view.getId()) {
			case R.id.btquitter:
				dismiss();
			break;
			case R.id.btvalingre:
				try{			
					TextView textmesure = (TextView) findViewById(R.id.valunite);
					TextView textquantite = (TextView) findViewById(R.id.valquante);
					TextView textingredient = (TextView) findViewById(R.id.valingredient);
					
					String sRetour =textquantite.getText()+","+textmesure.getText()+","+textingredient.getText();
					//appelle de la methode readyListener.ready et on passe en valeur le formatage
					readyListener.ready(sRetour);
					//String u="kk";
				}catch(Exception e){
					TextView textbastmp2 = (TextView) findViewById(R.id.ingredient);
					textbastmp2.setText(e.toString());
				}
			 break;
			}
		}
	
}

On rajoute un attribut readyListener, je modifie également le constructeur et sur le clique du bouton valider on appelle la méthode readyListener.ready

dans ma classe principale je modifie l’ouverture de notre boite de dialogue

btEnregajcon.setOnClickListener(new Button.OnClickListener() {
                public void onClick(View v) {
                	//View v v.getContext()
                	Myclassdialog dialog = new Myclassdialog(v.getContext(),
                			new OnReadyListener());
                	dialog.setTitle("Enregistrement ingredient");
                	dialog.show();
                	
                }
        	});

on rajoute ensuite toujours dans ma classe principale la création de la classe OnReadyListener() et de la méthode ready qui vas s’occuper de remplir ma zone de texte au format définie plus haut

private class OnReadyListener implements Myclassdialog.ReadyListener { 

        @Override 
        public void ready(String pass) { 
        	String sNewtext;
        	TextView textbastmp2 = (TextView) findViewById(R.id.entry2);
        	sNewtext = textbastmp2.getText()+"\n"+pass;
        	textbastmp2.setText(sNewtext);
        } 

   } 

etape141 etape142

source ici

Il est temps de mettre à profit les tutoriels d’Android France:
Passez à la vitesse supérieure et investissez quelques dizaines d’euros pour acquérir les connaissances qui vous feront gagner de l’argent avec vos applications rendez-vous sur notre boutique Android-france pour ces formations en vidéo

Juin 4, 2009Gnakouri Danon


Dead Pixel Detect - Détéctez les pixels défecteux de votre HTC Dream ou HTC MagicSuperGNES - Emulateur Super Nintendo sur Android pour HTC Dream
Gnakouri Danon

Co-fondateur du site Android france, senior lead developper, passionné de bière et de cigare cubain

4 juin 2009 Developpement, Tuto développementboite, Developpement, diag, dialogue381

2023 © Android-France