IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Peut-on raccourcir ou simplifier cette syntaxe ?


Sujet :

Android

  1. #1
    Membre éclairé
    Avatar de clavier12AZQSWX
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2009
    Messages
    1 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 382
    Points : 858
    Points
    858
    Par défaut Peut-on raccourcir ou simplifier cette syntaxe ?
    bonjour,


    Etant en train d'apprendre Android, je me rends compte que certaines syntaxes sont embettant. Donc je me demande si c'est ma doc, mon tuto ou bien si on peut simplifier.

    Par exemple quand j'écris cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Button bouton =  (Button) findViewById(R.id.button2);
            bouton.setOnClickListener(new OnClickListener() {
    		@Override
    		public void onClick(View v) {
    		.....mon code quand je clic sur ce bouton .....				
    		}
    		});
    n'y-a-t-il pas une syntaxe pour écrite directement :

    button2.onClick(........mon code quand je clic sur ce bouton ......);

  2. #2
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    monBouton.setOnClickListener(new LeListenerQuiVaBien());Je pense que c'est le mieux que tu puisses faire (i.e. : créer une classe listener à chaque fois que le besoin s'en fait sentir).

    Sinon, cette news pourrait t'intéresser : www.developpez.com/actu/43777/AQuery-s-inspire-de-JQuery-pour-faciliter-le-developpement-Android-en-simplifiant-les-taches-asynchrones-et-la-manipulation-de-l-IU/
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  3. #3
    Membre éclairé
    Avatar de clavier12AZQSWX
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2009
    Messages
    1 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 382
    Points : 858
    Points
    858
    Par défaut
    où alors quand je dépose le bouton avec l'IDE (eclipse) dans la vue (activity), n'-y-a-t-il pas moyen que eclipse écrive de lui-même la partie déclarative du bouton dans mon fichier main.java ?

    J'ai déjà fait du java avec Jbuilder et aussi du c++,vb.net et leurs IDE créée d'eux-même la partie déclarative du bouton laissant ensuite la main à l'utilisateur pour écrire le code "sous le bouton" suivant le signale (clilk, survol,..etc).

    Soit c'est eclipse qu'est mal fait, soit c'est pas le bon outil IDE pour faire du dEV avec android à la façon d'un L4G.

    Trop de délcarations à la mano à faire est une source d'erreur et surtout un frein et ça ralentit le dev.

  4. #4
    Membre extrêmement actif
    Avatar de Ryu2000
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    9 586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 9 586
    Points : 18 485
    Points
    18 485
    Par défaut
    Tu peux aller dans le fichier XML, et dans le button tu met :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    android:onClick="maMethode"
    Et dans l'Activity qui va utiliser ce layout tu mets :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public void maMethode(View view){
     
    }
    Ou alors tu peux faire pour que ta classe qu'extends Activity, extends également OnClickListener, comme ça t'implements onClick(View view) et t'as plus qu'a testé quel bouton a été appuyé, si il y en a plusieurs.
    Keith Flint 1969 - 2019

  5. #5
    Membre éclairé
    Avatar de clavier12AZQSWX
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2009
    Messages
    1 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 382
    Points : 858
    Points
    858
    Par défaut
    Citation Envoyé par Hizin Voir le message
    Sinon, cette news pourrait t'intéresser : http://www.developpez.com/actu/43777...ation-de-l-IU/
    c'est clair que c'est ce qu'il manque (par rapport aux autres outils robustes de dev des autres langages).

    Si au moins eclipse faisait les taches évidentes déclaratives.

  6. #6
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Tu peux utiliser l'attribut android:onClick sur la déclaration de ton bouton XML, pour appeler la méthode de ton choix (placée dans l'activité courante):

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <Button android:id="@+id/mybutton" android:text="Valider" android:onClick="validerDonnees" />

    Edit : grillé par thierrybenji
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  7. #7
    Membre extrêmement actif
    Avatar de Ryu2000
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    9 586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 9 586
    Points : 18 485
    Points
    18 485
    Par défaut
    Boarf, ça va...
    Il faut juste écrire une ligne...

    Même pas en fait :
    button.setO te propose setOnClickListener, après il suffit t'écrire new OnClickListener(){} et là tu fais clique droit => add unimplements method.

    Tu va réussir à l'écrire cette ligne va, ne t'inquiètes pas ^^
    Keith Flint 1969 - 2019

  8. #8
    Membre éclairé
    Avatar de clavier12AZQSWX
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2009
    Messages
    1 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 382
    Points : 858
    Points
    858
    Par défaut
    un autre éexemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    AlertDialog boite_a_message;
    				boite_a_message = new AlertDialog.Builder(Main.this).create();
    				boite_a_message.setTitle("mon titre à moi");
    				boite_a_message.setMessage("mon messsage à moi");	       		
    				boite_a_message.show();

    ya pas moyen d'écrire (comme en bv.net) qqchose ressemblant à cela :

    AlertDialog("montitre","montexte");

  9. #9
    Membre extrêmement actif
    Avatar de Ryu2000
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    9 586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 9 586
    Points : 18 485
    Points
    18 485
    Par défaut
    Ça tu peux le faire avec les Toast.

    Ou alors tu créé ta classe qu'extends Dialog et tu fais un constructeur avec un context, un titre et un message.
    Keith Flint 1969 - 2019

  10. #10
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    Ou te faire une classe de méthode utilitaire faisant, par exemple :
    Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    	/**
             * Static method for showing an alert dialog within the given activity
             * @param activity the activity in which the AlertDialog must reveal itself
             * @param message the message displayed by the AlertDialog
             */
    	public static void showAlertDialog(Activity activity, CharSequence message)
    		{
    			final AlertDialog.Builder builder = new AlertDialog.Builder(activity);
    			builder.setMessage(message);
    			builder.setCancelable(false);
    			builder.setNeutralButton(
    			activity.getString(R.string.ok), new DialogInterface.OnClickListener()
    			{
    				@Override
    				public void onClick(DialogInterface dialogInterface, int i)
    					{
    						dialogInterface.cancel();
    					}
    			}
    			);
     
     
    			activity.runOnUiThread(
    						new Runnable()
    							{
    								@Override
    								public void run()
    									{
    										AlertDialog alertDialog = builder.create();
    										alertDialog.show();
    									}
    							}
    							);
    		}

    Remarque : c'est de ma classe utilitaire.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

Discussions similaires

  1. Que signifie cette syntaxe de code ?
    Par SPACHFR dans le forum C
    Réponses: 4
    Dernier message: 02/05/2007, 13h24
  2. [Tableaux] Simplifier une syntaxe
    Par blueice dans le forum Langage
    Réponses: 1
    Dernier message: 07/09/2006, 13h39
  3. Connaissez-vous cette syntaxe ?
    Par lilith dans le forum ASP
    Réponses: 2
    Dernier message: 06/09/2006, 17h46
  4. c'est quoi cette syntaxe !
    Par bnuitrare dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 28/08/2006, 09h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo