Question

J'ai une vue personnalisée dans src> myproject.test> AccueilVoir

Dans mon principal xml de mise en page que je donne les résultats suivants:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/home_root"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <myproject.test.HomeView
        android:id="@+id/home_view"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        >
    </myproject.test.HomeView>

</LinearLayout>

Dans le HomeActivity j'ai un appel comme celui-ci dans la méthode onCreate.

setContentView(R.layout.main);
HomeView mHomeView = (HomeView) this.findViewById(R.id.home_view);

La force d'application fermé lorsque la méthode est appelée setContentView. Il semble que mon principal xml est incorrect.

Toutes les idées?

Était-ce utile?

La solution

Voulez-vous dire son pas se rendre à la

HomeView mHomeView = (HomeView) this.findViewById(R.id.home_view);

et s'écraser sur la ligne avant qu'il ne?

Vérifiez si votre constructeur est

HomeView(final Context context, final AttributeSet attrs){
     super(context, attrs);

et non

HomeView(final Context context){
     super(context);

vous avez besoin du AttributeSet

Autres conseils

Vérifier les constructeurs que vos outils de homeview:

 public HomeView(Context context, AttributeSet atts) {
     super(context, atts); 
 } 
<LinearLayout xmlns:android = 
      http://schemas.android.com/apk/res/android"
    android:id="@+id/home_root"
    android:orientation="vertical"

Aucun de mes mises en page ont @+id. Peut-être que vous devez définir la vue de home_root. Vérifiez avec vous R.java pour le nom de la mise en page, ou essayez

setContentView(R.layout.home_root);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top