2011-05-17 2 views
0

une personne regarde ce code simple (?) Et dites-moi ce qui ne va pas s'il vous plaît? Je suis un débutant complet pour le développement Android et je ne comprends pas pourquoi mon application ne démarre même pas. Je reçois une erreur inattendue ..: ( voici:Erreur d'exécution Android dans AVD

package applicationTest.ppr.com; 

import android.app.Activity; 
import android.os.Bundle; 
import android.widget.LinearLayout; 
public class MainClass extends Activity { 
    /** Called when the activity is first created. */ 

    /*Global vars*/ 
    public static LinearLayout lila; 

    @Override 
    public void onCreate(Bundle savedInstanceState) {  
     super.onCreate(savedInstanceState); 
     lila = (LinearLayout) findViewById(R.id.lilay); 
     setContentView(lila); 
    } 

    public void Shortoast(){new Game(this);} 

    public static LinearLayout returnLayout(){return lila;} 


} 

Le programme ne démarre même pas, et je pense qu'il pourrait avoir quelque chose à voir avec la façon dont je gère la LinearLayout et setContentView();

en tout cas merci beaucoup à l'avance

+0

Avez-vous un fichier xml de mise en page qui définit votre R.id.lilay? Essayez d'utiliser: setContentView (R.Layout.yourlayout) –

+0

Utiliser 'adb logcat', DDMS, ou la perspective DDMS Eclipse pour examiner LogCat et regardez la trace de la pile associée à votre erreur. – CommonsWare

+0

oui, je l'ai dans mon main.xml, bien que la principale raison pour laquelle j'ai essayé cette approche était parce que je veux mettre à jour du texte à l'écran d'une autre classe. C'est pourquoi j'ai créé la méthode returnLayout. pour que je puisse faire quelque chose comme MainClass.returnLayout(). setView (texView) – Fred

Répondre

0

Suggestion: le garder aussi simple que possible jusqu'à ce que vous résoudre le problème Ensuite, vous pouvez vous concentrer sur votre logique métier

package applicationTest.ppr.com; 

import android.app.Activity; 
import android.os.Bundle; 
import android.widget.LinearLayout; 

public class MainClass extends Activity { 
    /** Called when the activity is first created. */ 

    @Override 
    public void onCreate(Bundle savedInstanceState) {  
     super.onCreate(savedInstanceState); 
     setContentView(R.id.lilay); 
    } 

} 
!.

En outre, votre activité principale est-elle mappée dans le manifeste Android?

<application android:icon="@drawable/icon" android:label="@string/app_name"> 

    <activity android:name="MainClass" 
       android:label="@string/app_name"> 

     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 

    </activity> 

</application> 

</activity> 

--EDIT-- Avez-vous le fichier dans votre lilay.xml res/dossier de mise en page?

+0

Lilay est mon ID LinearLayout, si elle était un fichier xml devrait-il pas R.layout.NAME.xml? – Fred

+0

Eh bien .. je viens de comprendre que je n'utilise pas linearlayout correctement ... mon but est d'avoir du texte à l'écran. et aussi un bouton. quand le bouton est pressé, ce texte est modifié, sans créer un nouvel objet ... – Fred

+0

Oui, roger ça. Bien sûr, lilay est l'identifiant linearlayout –