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 :

Afficher une BDD MySQL dans un ListView


Sujet :

Composants graphiques Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Afficher une BDD MySQL dans un ListView
    Tout est dans le titre je crois,
    voici mon code, mais cela provoque une fermeture forcée :
    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
    public class BDDAlarm extends Activity implements AlarmeAdapterListener{
        /** Called when the activity is first created. */
        TextView txt;  
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            LinearLayout rootLayout = new LinearLayout(getApplicationContext()); 
            txt = new TextView(getApplicationContext());    
            rootLayout.addView(txt);    
            setContentView(rootLayout);    
            txt.setText(getServerData(strURL));  
     
            ArrayList<BDDAlarm> listA = new ArrayList<BDDAlarm>();
            AlarmeAdapter adapter = new AlarmeAdapter(this, listA);
            adapter.addListener(this); 
            ListView list = (ListView)findViewById(R.id.listalarm);
            list.setAdapter(adapter);
        }  
       public static final String strURL = "http://10.0.2.2:8080/mesRequestes/Alarm.php";      
       private String getServerData(String returnString) {  
           InputStream is = null;  
           String result = "";  
           ArrayList<NameValuePair> listAlr = new ArrayList<NameValuePair>(); 
           listAlr.add(new BasicNameValuePair("alarm",""));  
           try{  
               HttpClient httpclient = new DefaultHttpClient();
    //           HttpResponse response = httpclient.execute(new HttpGet(strURL));
               HttpPost httppost = new HttpPost(strURL);  
               httppost.setEntity(new UrlEncodedFormEntity(listAlr));  
               HttpResponse response = httpclient.execute(httppost);    
               is = response.getEntity().getContent(); 
     
           }catch(Exception e){  
               Log.e("log_tag", "Error in http connection " + e.toString());  
           }  
     
           // Convertion de la requête en string  
           try{  
             //  BufferedReader reader = new BufferedReader(new InputStreamReader(is));  
           	BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8); 
           	StringBuilder sb = new StringBuilder();  
               String line = null;  
               while ((line = reader.readLine()) != null) {  
                   sb.append(line + "\n");  
               }  
               is.close();  
               result=sb.toString();  
               Log.i("result", result);
           }catch(Exception e){  
               Log.e("log_tag", "Error converting result " + e.toString());  
           }  
           // Parse les données JSON  
           try{  
              JSONArray jArray = new JSONArray(result);  
               for(int i=0;i<jArray.length();i++){  
                  JSONObject json_data = jArray.getJSONObject(i);  
                  // Affichage ID_ville et Nom_ville dans le LogCat  
                   Log.i("log_tag","ID_ALARM: "+json_data.getInt("ID_ALARM")+  
                           ", ID_OBJECT: "+json_data.getInt("ID_OBJECT"));  
                   // Résultats de la requête  
                   returnString += "\n\t" + jArray.getJSONObject(i);   
               }  
           }catch(JSONException e){  
               Log.e("log_tag", "Error parsing data " + e.toString());  
          }  
          return returnString;   
       }  
    }
    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
    public class AlarmeAdapter extends BaseAdapter{
     
    	private List<BDDAlarm> mListA;
    	public Context mContext;
    	private LayoutInflater mInflater;
     
    	public AlarmeAdapter(BDDAlarm bddAlarm, ArrayList<BDDAlarm> listA) {
    		  mContext = bddAlarm;
    		  mListA = listA;
    	}
     
    	public void addListener(BDDAlarm bddAlarm) {
    		// TODO Auto-generated method stub
     
    	}
     
    	@Override
    	public int getCount() {
    		  return mListA.size();
    	}
     
    	@Override
    	public Object getItem(int position) {
    		return mListA.get(position);
    	}
     
    	@Override
    	public long getItemId(int position) {
    		return position;
    	}
     
    	@Override
    	public View getView(int position, View convertView, ViewGroup parent) {
    		  LinearLayout layoutItem;
    		  if (convertView == null) {
    		    layoutItem = (LinearLayout) mInflater.inflate(R.layout.listitem, parent, false);
    		  } 
    		  else 
    		  {
    		  	layoutItem = (LinearLayout) convertView;
    		  }      
    		  TextView alarm = (TextView)layoutItem.findViewById(R.id.text);
     
    		  layoutItem.setTag(position);
     
    		  return layoutItem;
    	}
     
        private ArrayList<AlarmeAdapterListener> myListListener = new ArrayList<AlarmeAdapterListener>();
        public void addListener(AlarmeAdapterListener aListener) 
        {
        	myListListener.add(aListener);
        }
    	public interface AlarmeAdapterListener 
    	{
      	  //TODO
    	}
     
    }
    Avant de rajouter le classe AlarmeAdapter, j'arrivais à afficher mes données dans l'émulateur. Mais le but c'est qu'elles soient dans des listview.
    Quelqu'un pour m'aider?
    Dernière modification par Invité ; 14/06/2011 à 14h58.

  2. #2
    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
    Par défaut
    Comme d'hab, pouvez vous poster vos erreurs logcat ici (au moins les exceptions) ?
    Avec le debugueur, votre code plante où ? les variables sont dans quels états (contenus) ?

  3. #3
    Invité
    Invité(e)
    Par défaut
    ---EDIT---
    voici le logcat :
    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
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029): FATAL EXCEPTION: main
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.julie/com.julie.BDDAlarm}: java.lang.NullPointerException
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at android.app.ActivityThread.access$2300(ActivityThread.java:125)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at android.os.Handler.dispatchMessage(Handler.java:99)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at android.os.Looper.loop(Looper.java:123)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at android.app.ActivityThread.main(ActivityThread.java:4627)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at java.lang.reflect.Method.invokeNative(Native Method)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at java.lang.reflect.Method.invoke(Method.java:521)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at dalvik.system.NativeStart.main(Native Method)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029): Caused by: java.lang.NullPointerException
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at com.julie.BDDAlarm.onCreate(BDDAlarm.java:49)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    06-14 12:55:02.195: ERROR/AndroidRuntime(1029):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
    Donc la ligne concernée est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    list.setAdapter(adapter);

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

Discussions similaires

  1. Aide pour afficher une valeur dans une BDD MysQl
    Par cybermembre dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 24/11/2012, 20h14
  2. Affichage des données d'une table MySQL dans un ListView selon l'id
    Par loviso dans le forum Composants graphiques
    Réponses: 0
    Dernier message: 30/07/2012, 16h28
  3. [Débutant] afficher une table d'une BDD MySql dans un combobox multicolonnes
    Par vbcasio dans le forum VB.NET
    Réponses: 4
    Dernier message: 24/06/2011, 11h32
  4. [Listview] Remplissage à partir d'une bdd mysql
    Par Cybher dans le forum C++Builder
    Réponses: 2
    Dernier message: 18/07/2005, 09h32
  5. Changements de colonnes dans une BDD MySQL
    Par arnaud_verlaine dans le forum Requêtes
    Réponses: 8
    Dernier message: 07/08/2003, 11h33

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