Question

J'ai un code qui fonctionne 99% du temps depuis Deploy est dans un bon nombre de clients, mais parfois je reçois le texte suivant:

  

java.lang.reflect.InvocationTargetException     android.widget.LinearLayout. (LinearLayout.java:92)       java.lang.reflect.Constructor.constructNative (méthode native)       java.lang.reflect.Constructor.newInstance (Constructor.java:446)       android.view.LayoutInflater.createView (LayoutInflater.java:499)       com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView (PhoneLayoutInflater.java:56)       android.view.LayoutInflater.createViewFromTag (LayoutInflater.java:562)       android.view.LayoutInflater.rInflate (LayoutInflater.java:617)       android.view.LayoutInflater.inflate (LayoutInflater.java:407)       android.view.LayoutInflater.inflate (LayoutInflater.java:320)       com.mycode.mycode.MyClass.draw (xxxxxxx)   .....

et sur mon code, j'ai:

  

LayoutInflater li = (LayoutInflater) ce                       .getSystemService (Context.LAYOUT_INFLATER_SERVICE);
              theview = li.inflate (R.layout.partofthescreen,                       unConteneur, false);

la question est donc pourquoi je reçois InvocationTargetException.

Merci

Était-ce utile?

La solution

Vous pouvez essayer getLayoutInflater() au lieu de votre appel getSystemService(), bien que je ne suis pas certain que cela va faire une différence.

Un InvocationTargetException vient de la réflexion, et signifie que le Method qui a été invoqué jeté un Exception. Voyez-vous un signe d'une autre trace de pile qui pourrait être la Exception sous-jacente? Sinon, essayez attraper InvocationTargetException et regarder getCause() pour voir ce qui se passe réellement.

Autres conseils

J'ai eu le même problème.

Je résolu ce problème en:

Faire la variable locale

private Context **context**;

Ensuite, dans votre constructeur de la classe (qui a l'argument contexte de contexte) faire

this.context=**context**;

LayoutInflater li = (LayoutInflater) **context** .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

theview = li.inflate(R.layout.partofthescreen, somecontainer, false);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top