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

Composants graphiques Android Discussion :

probleme tuto hello views


Sujet :

Composants graphiques Android

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 32
    Points : 14
    Points
    14
    Par défaut probleme tuto hello views
    Bonjour,

    J'ai un probleme avec le tuto Hello Views : http://developer.android.com/guide/t...-listview.html

    J'ai suivi les etapes pas a pas, mais il y a une erreur a la ligne :

    lv.setOnItemClickListener(new OnListItemClick() {

    OnListItemClick est sous-ligné en vagues rouges et Eclipse me propose 4 trucs :

    1. Créer la classe OnListItemClick
    2. Créer l'interface OnListItemClick
    3. Change to OnListItemClickListener (Android.widget.AdapterView)
    4. Fix project setup


    Et sinon le but de mon programme serait de démarrer une nouvelle activité quand on clique sur un item. Et je ne sais pas trop comment faire.


    Merci !!

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 182
    Points : 159
    Points
    159
    Par défaut
    Voila le code :
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
     
    package com.android.listview;
     
    import android.app.Activity;
    import android.app.ListActivity;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.AdapterView;
    import android.widget.ArrayAdapter;
    import android.widget.TextView;
    import android.widget.Toast;
    import android.widget.AdapterView.OnItemClickListener;
     
    public class ListView extends ListActivity {
    	 static final String[] COUNTRIES = new String[] {
    		    "Afghanistan", "Albania", "Algeria", "American Samoa", "Andorra",
    		    "Angola", "Anguilla", "Antarctica", "Antigua and Barbuda", "Argentina",
    		    "Armenia", "Aruba", "Australia", "Austria", "Azerbaijan",
    		    "Bahrain", "Bangladesh", "Barbados", "Belarus", "Belgium",
    		    "Belize", "Benin", "Bermuda", "Bhutan", "Bolivia",
    		    "Bosnia and Herzegovina", "Botswana", "Bouvet Island", "Brazil", "British Indian Ocean Territory",
    		    "British Virgin Islands", "Brunei", "Bulgaria", "Burkina Faso", "Burundi",
    		    "Cote d'Ivoire", "Cambodia", "Cameroon", "Canada", "Cape Verde",
    		    "Cayman Islands", "Central African Republic", "Chad", "Chile", "China",
    		    "Christmas Island", "Cocos (Keeling) Islands", "Colombia", "Comoros", "Congo",
    		    "Cook Islands", "Costa Rica", "Croatia", "Cuba", "Cyprus", "Czech Republic",
    		    "Democratic Republic of the Congo", "Denmark", "Djibouti", "Dominica", "Dominican Republic",
    		    "East Timor", "Ecuador", "Egypt", "El Salvador", "Equatorial Guinea", "Eritrea",
    		    "Estonia", "Ethiopia", "Faeroe Islands", "Falkland Islands", "Fiji", "Finland",
    		    "Former Yugoslav Republic of Macedonia", "France", "French Guiana", "French Polynesia",
    		    "French Southern Territories", "Gabon", "Georgia", "Germany", "Ghana", "Gibraltar",
    		    "Greece", "Greenland", "Grenada", "Guadeloupe", "Guam", "Guatemala", "Guinea", "Guinea-Bissau",
    		    "Guyana", "Haiti", "Heard Island and McDonald Islands", "Honduras", "Hong Kong", "Hungary",
    		    "Iceland", "India", "Indonesia", "Iran", "Iraq", "Ireland", "Israel", "Italy", "Jamaica",
    		    "Japan", "Jordan", "Kazakhstan", "Kenya", "Kiribati", "Kuwait", "Kyrgyzstan", "Laos",
    		    "Latvia", "Lebanon", "Lesotho", "Liberia", "Libya", "Liechtenstein", "Lithuania", "Luxembourg",
    		    "Macau", "Madagascar", "Malawi", "Malaysia", "Maldives", "Mali", "Malta", "Marshall Islands",
    		    "Martinique", "Mauritania", "Mauritius", "Mayotte", "Mexico", "Micronesia", "Moldova",
    		    "Monaco", "Mongolia", "Montserrat", "Morocco", "Mozambique", "Myanmar", "Namibia",
    		    "Nauru", "Nepal", "Netherlands", "Netherlands Antilles", "New Caledonia", "New Zealand",
    		    "Nicaragua", "Niger", "Nigeria", "Niue", "Norfolk Island", "North Korea", "Northern Marianas",
    		    "Norway", "Oman", "Pakistan", "Palau", "Panama", "Papua New Guinea", "Paraguay", "Peru",
    		    "Philippines", "Pitcairn Islands", "Poland", "Portugal", "Puerto Rico", "Qatar",
    		    "Reunion", "Romania", "Russia", "Rwanda", "Sqo Tome and Principe", "Saint Helena",
    		    "Saint Kitts and Nevis", "Saint Lucia", "Saint Pierre and Miquelon",
    		    "Saint Vincent and the Grenadines", "Samoa", "San Marino", "Saudi Arabia", "Senegal",
    		    "Seychelles", "Sierra Leone", "Singapore", "Slovakia", "Slovenia", "Solomon Islands",
    		    "Somalia", "South Africa", "South Georgia and the South Sandwich Islands", "South Korea",
    		    "Spain", "Sri Lanka", "Sudan", "Suriname", "Svalbard and Jan Mayen", "Swaziland", "Sweden",
    		    "Switzerland", "Syria", "Taiwan", "Tajikistan", "Tanzania", "Thailand", "The Bahamas",
    		    "The Gambia", "Togo", "Tokelau", "Tonga", "Trinidad and Tobago", "Tunisia", "Turkey",
    		    "Turkmenistan", "Turks and Caicos Islands", "Tuvalu", "Virgin Islands", "Uganda",
    		    "Ukraine", "United Arab Emirates", "United Kingdom",
    		    "United States", "United States Minor Outlying Islands", "Uruguay", "Uzbekistan",
    		    "Vanuatu", "Vatican City", "Venezuela", "Vietnam", "Wallis and Futuna", "Western Sahara",
    		    "Yemen", "Yugoslavia", "Zambia", "Zimbabwe"
    		  };
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setListAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, COUNTRIES));
            android.widget.ListView lv = getListView();
            lv.setTextFilterEnabled(true);
     
            lv.setOnItemClickListener(new OnItemClickListener() {
              public void onItemClick(AdapterView<?> parent, View view,
                  int position, long id) {
                // When clicked, show a toast with the TextView text
                Toast.makeText(getApplicationContext(), ((TextView) view).getText(),
                    Toast.LENGTH_SHORT).show();
              }
            });
     
     
     
     
     
        }
     
        public void onListItemClick(ListView parent, View v, int position, long id){
        	Toast.makeText(getApplicationContext(), position,
                    Toast.LENGTH_SHORT).show();
        }
    }

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 190
    Points : 114
    Points
    114
    Par défaut
    pour démarrer une nouvelle activity sur le click sur un item, ajoute simplement les lignes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	Intent monIntent = new Intent(this,MonAutreActivite.class);
    startActivity(monIntent);
    dans la méthode onClick du listener...

  4. #4
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Points : 4 240
    Points
    4 240
    Par défaut
    En n'oubliant pas de déclarer cette nouvelle activité dans le manifest

  5. #5
    Membre à l'essai
    Inscrit en
    Octobre 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 32
    Points : 14
    Points
    14
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
        public void onListItemClick(ListView parent, View v, int position, long id){
        	Toast.makeText(getApplicationContext(), position,
                    Toast.LENGTH_SHORT).show();
            Intent monIntent = new Intent(this,DetailsProject.class);
            startActivity(monIntent);
     
        }
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    public class DetailsProject extends ListActivity
    {
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            TextView tv = new TextView(this);
            tv.setText("Projets\n");
            setContentView(tv);
        }
    }

    Merci tout le monde !! Par contre ca reste toujours sur la meme activity. J'ai bien rajouter les 2 lignes, mis a jour le Manifest, et creer ma classe DetailsProject.

    Sinon j'ai lu quelque part qu'avec les intents on pouvait passer des informations d'une activity à l'autre, c'est bien ca ?


    Merci encore !!

  6. #6
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Points : 4 240
    Points
    4 240
    Par défaut
    Salut,

    Quand tu dis que ça reste sur la même activité, ça veut dire quoi ?
    La même vue s'affiche, ou c'est vraiment la même activité qui est relancée ?

    Peut tu nous donner ici le code du manifest, le code des vues XML de tes activités ?

    Merci.

  7. #7
    Membre à l'essai
    Inscrit en
    Octobre 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 32
    Points : 14
    Points
    14
    Par défaut
    La même vue s'affiche.

    Voici les parties de code :

    Manifest :

    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
     
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
          android:versionCode="1"
          android:versionName="1.0" package="com.android.listview">
        <application android:icon="@drawable/icon" android:label="@string/app_name">
            <activity android:name=".ListView"
                      android:label="@string/app_name">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
            <activity android:name=".DetailsProject"
                      android:label="@string/app_name">
            </activity>
        </application>
    </manifest>
    Vue list_item.xml de la premiere activité :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <?xml version="1.0" encoding="utf-8"?>
    <TextView xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:padding="10dp"
        android:textSize="16sp" >
    </TextView>
    C'est la seule vue que j'ai, je suppose que je dois en créer une aussi pour la seconde activité. Je ne comprend pas comment une vue est liée à une activité, c'est à dire comment la première activité sait que sa vue est list_item.xml.

    En gros dans ma seconde activité, j'aurais des détails de l'item sur lequel on clique : 2 ou 3 titres avec des petits textes.

    Le problème viendrait-il de la vue manquante ?


    Merci

  8. #8
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Points : 4 240
    Points
    4 240
    Par défaut
    Oui, à mon avis, ta seconde activité se charge bien, mais la vue xml est la même donc, tu ne vois pas de différence.
    Pour "associer" ton activité à une vue :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setContentView(R.layout.main);
    main.xml est une vue xml.

    Si je ne suis pas très claire, je te suggère fortement de regarder la documentation d'Android, et de suivre les tutoriels afin de comprendre ces notions de vue, activité, manifest, etc

  9. #9
    Membre à l'essai
    Inscrit en
    Octobre 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 32
    Points : 14
    Points
    14
    Par défaut
    En fait je ne pense pas que la vue se charge. Si je ne met rien dans la methode onClick du listener, l'application marche quand même (le Toast s'affiche).

    Par contre si je retire le Toast en dessous de la ligne commentée (Show a toast...), la il n'apparait pas. Et si je fais justement l'intent et le passage dans ma seconde activity à cet endroit la du code, j'ai une erreur sur l'intent : Eclipse veut me faire supprimer les arguments this et DetailsProjet.class

    De plus j'ai essayer de changer la vue de la seconde activity et rien ne se passe non plus.

  10. #10
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 182
    Points : 159
    Points
    159
    Par défaut
    Pour compléter ce qu'à dit MrDuChnok, je rajouterais qu'il faut distinguer 2 aspects:
    Si tu cherches à interagir au sein de ton programme alors tu utilises les fonctionnalités Java traditionnelles.

    On fait appel à une autre activité quand par exemple on veut la liste des sonneries dont dispose le téléphone. A ce moment, il faut demander au système qu'il t'envoie l'information. C'est à dire qu'il lance l'activité afin que tu récupère les infos. Ceci se fait à travers les commandes suivantes par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Intent i = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER); 
    			startActivity(i); 
    				Uri uri = i.getData();
    PS : Si tu as remarqué, il n'y a pas de fonction main sous Android car elle est encapsulé dans le système.

    @+

  11. #11
    Membre à l'essai
    Inscrit en
    Octobre 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 32
    Points : 14
    Points
    14
    Par défaut
    Ce que j'essaye de faire en fait, c'est :

    1. Au lancement de l'application, on voit la liste des items (des projets).

    2. Quand on clique sur un des items, un nouvel ecran apparait avec du texte principalement, un context menu, et peut être un genre de bouton retour qui revient au premier écran.

    LordDaedalus, l'intent que tu m'as donné fonctionne parfaitement. Mais au lieu d'avoir la liste des sonneries je souhaiterais avoir l'écran que je décris en point 2. Et l'intent qu'on m'a donné plus haut fait une erreur dans Eclipse.

    Qu'entends tu par fonctionnalités Java traditionnelles ? Ce n'est pas un Intent et une nouvelle activity que je dois faire dans mon cas ?


    Merci

  12. #12
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 182
    Points : 159
    Points
    159
    Par défaut
    Pour ton point 2, tu peux utiliser un Custom Dialog, c'est tout aussi efficace.
    Voici un exemple de code :

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
     
    @Override
        protected Dialog onCreateDialog(int id) {
            final Dialog dialog;
            final Context mContext = getApplicationContext();
            dialog = new Dialog(this);
    		dialog.setContentView(R.layout.dialog);	
    		final TextView  dlgTextView = (TextView) dialog.findViewById(R.id.TextView01);
    		final EditText dlgEditText = (EditText) dialog.findViewById(R.id.EditText01);
    		final Button btOk = (Button)dialog.findViewById(R.id.Button05);
    		final Button btNo = (Button)dialog.findViewById(R.id.Button06);
    		String strTexte = "";
    		String strTitre = "";
    		SharedPreferences pref = getPreferences(mContext.MODE_PRIVATE); 
    		final SharedPreferences.Editor editeur = pref.edit();
    		String prefTel = "";
     
                // do the work to define the pause Dialog
            	dlgTextView.setText(R.string.dlg_txt);
            	prefTel = pref.getString("prefTel", null);
            	if (prefTel.length() == 0){
            		dlgEditText.setText(R.string.tel);
            	}else{
            		dlgEditText.setText(prefTel);
            	}
    			dialog.setTitle(R.string.dlg_titre_police);
    			btOk.setOnClickListener(new Button.OnClickListener(){
    				@Override
    				public void onClick(View view) {
    					// TODO Auto-generated method stub
    					dlgTextView.clearFocus();
    					final String strTel = dlgEditText.getText().toString();
    					editeur.remove("prefTel");
    					editeur.putString("prefTel", strTel);
    					editeur.commit();
    					dialog.dismiss();
    				}
    	        });
    			btNo.setOnClickListener(new Button.OnClickListener(){
    				@Override
    				public void onClick(View view) {
    					// TODO Auto-generated method stub
    					dlgTextView.clearFocus();
    					dialog.dismiss();
    				}
    	        });
     
     
     
            return dialog;
        }
    PS : Par habitude je passe tous les textes sous forme de variable et ils sont stockés dans string.xml

    Ce code affiche une boite de dialogue dont on peut modifier le texte, avec un champ texte modifiable et un EditView modifiable

    Il y a une notion de persistance pour le cas ou des données ont déjà été saisie; Dans ce cas elles sont rappelées à l'ouverture de la boite de dialogue
    Bon courgae

  13. #13
    Membre à l'essai
    Inscrit en
    Octobre 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 32
    Points : 14
    Points
    14
    Par défaut
    Merci !!

    Et donc j'integre ce morceaux de code comme ceci ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
            lv.setTextFilterEnabled(true);
            lv.setOnItemClickListener(new OnItemClickListener() {    
                  protected Dialog onCreateDialog(int id) {....

  14. #14
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 182
    Points : 159
    Points
    159
    Par défaut
    Non il faut surcharger la classe de base d'où l'override

  15. #15
    Membre à l'essai
    Inscrit en
    Octobre 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 32
    Points : 14
    Points
    14
    Par défaut
    Bon finalement, je dois obligatoirement faire une nouvelle activity (cahier des charges de m...).

    Le problème vient en fait du setContentView dans ma 2e activity.

    Si je le met en commentaire, ca fonctionne (j'ai un ecran noir), sinon l'application plante.

    Je remet la 2e activity :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public class DetailsProject extends ListActivity
    {
     
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
     
     
           setContentView(R.layout.details_project);
        }
    }
    XML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                  android:layout_width="fill_parent" 
                  android:layout_height="fill_parent" 
                  android:orientation="vertical" >
        <TextView android:id="@+id/text"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  android:text="Hello, I am a TextView" />
    </LinearLayout>
    Debug :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    07-20 22:10:38.049: INFO/System.out(1456): waiting for debugger to settle...
    07-20 22:10:38.268: INFO/System.out(1456): debugger has settled (1447)
    07-20 22:10:39.517: INFO/ActivityManager(52): Displayed activity com.android.listview/.ListView: 4755 ms (total 4755 ms)
    07-20 22:10:41.498: INFO/ActivityManager(52): Starting activity: Intent { cmp=com.android.listview/.DetailsProject }
    07-20 22:10:51.528: WARN/ActivityManager(52): Launch timeout has expired, giving up wake lock!
    07-20 22:10:51.592: WARN/ActivityManager(52): Activity idle timeout for HistoryRecord{43dd1808 com.android.listview/.DetailsProject}
    Et enfin le manifest :

    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
     
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
          android:versionCode="1"
          android:versionName="1.0" package="com.android.listview">
        <application android:icon="@drawable/icon" android:label="@string/app_name">
            <activity android:name=".ListView"
                      android:label="@string/app_name">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
            <activity android:name=".DetailsProject"
                      android:label="@string/app_name">
            </activity>
        </application>
    </manifest>
    Même en mettant la vue de la première activity ca plante...

    Si quelqu'un a une idée ?

    Merci d'avance

  16. #16
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Points : 4 240
    Points
    4 240
    Par défaut
    Ta deuxième activité hérite de ListActivity, or dans ton layout, tu n'as pas de List.
    Fait hériter ta deuxième activité de Activity, et ça devrait peut être fonctionner.

  17. #17
    Membre à l'essai
    Inscrit en
    Octobre 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 32
    Points : 14
    Points
    14
    Par défaut
    MERCI !!

    Enfin ca marche !! Il me reste juste a faire un context menu.

    En effet c'etait le ListActivity qui fesait planter l'application. Juste par curiosité, si j'avais une 3e activity et que je fesais un intent pour passer de la 2e a la 3e activity, il aurait fallu mettre ListActivity ?


    Merci encore !!

  18. #18
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Points : 4 240
    Points
    4 240
    Par défaut
    En faite, une activité doit avoir comme type Activity.
    Si la tâche principale de ton activité est de gérer une liste de données, alors tu peux la faire hériter de ListActivity. Cela t'offrira quelques facilités pour gérer la liste. Cela implique que tu es un objet List avec un certain id dans ton xml (cf : http://mickael-lt.developpez.com/tut...iser-listview/ ).


    Mais par défaut, une activité doit hériter du type de base Activity.

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

Discussions similaires

  1. Probleme tuto SDL_Rwops
    Par Scheb dans le forum SDL
    Réponses: 1
    Dernier message: 14/06/2009, 21h06
  2. Probléme avec le tuto hello world
    Par alpha_one_x86 dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 25/03/2009, 19h39
  3. Probleme tuto intermediaire
    Par Chanax dans le forum Ogre
    Réponses: 1
    Dernier message: 08/04/2008, 11h50
  4. [NetBeans] Probleme tuto netbeans4.1 et SJAS
    Par ms7 dans le forum NetBeans
    Réponses: 4
    Dernier message: 10/02/2006, 12h27
  5. probleme tuto
    Par Turgal dans le forum C
    Réponses: 2
    Dernier message: 20/11/2005, 13h51

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