2011-04-07 1 views
1

J'ai créé une image personnalisée. Mais je reçois une InflateException quand j'essaye de lancer ceci. Quelqu'un peut-il m'aider à résoudre ce problème?InflateException (classe de gonflement d'erreur) lors de l'utilisation de widget personnalisé en xml

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@drawable/herinnering_background"> 
<be.test.ArrowImageView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:src="@drawable/kompas_arrow_car" 
    /> 
</FrameLayout> 


package be.test; 

import android.content.Context; 
import android.graphics.Canvas; 
import android.graphics.Color; 
import android.graphics.Paint; 
import android.widget.ImageView; 

public class ArrowImageView extends ImageView{ 

    public ArrowImageView(Context context) { 
     super(context); 
    } 

    @Override 
    public void draw(Canvas canvas) { 
     super.draw(canvas); 

     Paint paint = new Paint(Paint.LINEAR_TEXT_FLAG); 
     paint.setColor(Color.GREEN); 
     paint.setTextSize(12.0F); 
     canvas.drawText("Hello World in custom view", 100, 100, paint); 
    } 
} 
+0

Pouvez-vous coller la trace de pile d'exception? – peceps

Répondre

10

Je pense que le problème est que vous devez mettre en œuvre un constructeur avec le AttributeSet parce que c'est celui utilisé par le LayoutInflator:

ImageView (contexte de contexte, attrs AttributeSet)

+0

Merci pour votre aide – Gabrielle

Questions connexes