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

API standards et tierces Android Discussion :

[Dev] Problème OnClickButtonListener


Sujet :

API standards et tierces Android

  1. #1
    Rédacteur
    Avatar de Viish
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2009
    Messages
    427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 427
    Par défaut [Dev] Problème OnClickButtonListener
    Bonsoir,

    Je suis en train de faire une application qui necessite un champ de texte et un bouton de validation.
    J'ai pour ce faire crée une 2eme Activity appelée par le menu de la première. Jusque la tout va bien.

    Mon problème est que dans ma 2eme Activity, tant que je ne link pas mon OnClickButtonListener a mon bouton, ma fenetre s'affiche correctement mais mon bouton ne fait rien, alors que si je le fait, lors du click sur le menu du la premire Activity, une exception est levée et l'application redemarre.

    Mon OnClickButtonListener :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    private OnClickListener validateListener = new OnClickListener()
    {
    	public void onClick(View v)
    	{
    		cardName = editCardName.getText().toString();
    	}
    };
    Et le linkage avec le bouton :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    validate.setOnClickListener(validateListener);
    Il suffit que je commente cette derniere ligne pour ne plus avoir de probleme a l'execution.

    Voici l'erreur que j'obtiens dans Android :
    Sorry ! The application nom_de_mon_appli has stopped unexpectly. Please try again.

    Quand a DDMS :
    NullPointerException

    Même si mon Listener ne fait rien le probleme survient quand même.
    J'ai essayé en compilant pour Android 1.1 au lieu de 1.5, rien n'y fait.

    Si quelqu'un veut bien m'aider.

    Merci d'avance.

  2. #2
    Rédacteur
    Avatar de Viish
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2009
    Messages
    427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 427
    Par défaut
    En utilisant Ddms, le debugger, je me rend compte qu'en effet va variable vaut null, mais pourquoi ?

    Elle est definie dans mon xml, je la recupere ici avant de m'en servir, ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    private Button send; // Dans la classe
    send = (Button) this.findViewById(R.id.btn_validate);  // Dans onCreate de la classe
    Mon xml correspondant :
    Code : 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
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
     
    	<EditText
        	android:id="@+id/et_card_name"
        	android:layout_width="fill_parent"
        	android:layout_height="wrap_content"
        />
     
    	<Button
        	android:id="@+id/btn_validate"
        	android:layout_width="fill_parent"
        	android:layout_height="wrap_content"
        	android:text="Valider"
        />
     
    </LinearLayout>
    Merci infiniement a celui qui prendra la peine de m'aider.

  3. #3
    Rédacteur
    Avatar de Viish
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2009
    Messages
    427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 427
    Par défaut
    J'ai finalement trouvé la réponse, la voici pour ceux qui seraient dans le même cas que moi :

    Mon ancien code non fonctionnel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    super.onCreate(savedInstanceState);
            requestWindowFeature(Window.FEATURE_NO_TITLE);
            send = (Button) this.findViewById(R.id.btn_validate);
            send.setOnClickListener(validateListener);
            setContentView(R.layout.add);
    Mon nouveau code fonctionnel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    super.onCreate(savedInstanceState);
            requestWindowFeature(Window.FEATURE_NO_TITLE);
            setContentView(R.layout.add);
            send = (Button) this.findViewById(R.id.btn_validate);
            send.setOnClickListener(validateListener);
    Vous voyez la difference ? Il faut appeler setContentView avant ...

  4. #4
    Membre chevronné

    Profil pro
    Inscrit en
    Février 2008
    Messages
    658
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 658
    Par défaut OutPut et Simuler GPS sous Android
    Une aide aussi!

    Ce que tu nous a montré : Application .... try again. C'est la consequence d'une exception.Mais il ne te montre pas le output. Ca ne renseigne pas la cause de l'exception ni le lieu de l'excecption. Il dit juste " le prog n'a pas marché

    Pour voir les resultats , les errors , les warnings, info etc.. en Android :
    Il faut aller

    Windows---------> Show View--------------> Other------> Android----->LogCat

    C'est lLOgcat qui contient le processus de l'execution.

    Pour simuler GPS ! C'est tres simple aussi il faut aller :
    Windows---------> Show View--------------> Other------> Android----->Emulator Control.

  5. #5
    Rédacteur
    Avatar de Viish
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2009
    Messages
    427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 427
    Par défaut
    Quand j'ai posté ce message je venais juste de débuter en Android, j'étais un peu lost.

    La maintenant que j'ai passé quelques dizaines d'heures sur mes applis je suis beaucoup plus à l'aise

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DEV] problème compilation QT répertoire sources
    Par Peter57 dans le forum Apple
    Réponses: 1
    Dernier message: 19/01/2009, 14h38
  2. [DEV] problème avec crontab
    Par kaele dans le forum Apple
    Réponses: 0
    Dernier message: 15/12/2008, 13h02
  3. [DEV] Problème de compilation "universelle"
    Par Fabllot dans le forum Développement OS X
    Réponses: 1
    Dernier message: 03/04/2008, 14h59
  4. [DEV] Problème compilation BlueZ sous Mac OS
    Par innosang dans le forum Apple
    Réponses: 12
    Dernier message: 03/11/2007, 01h58
  5. [DEV]Problème WebPart-Required Field Validator
    Par voschielle dans le forum SharePoint
    Réponses: 4
    Dernier message: 05/10/2007, 19h16

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