2017-10-19 3 views
0

Ich greife auf ein Layout aus einer Klasse, die Aktivität ausdehnt, wenn ich LayoutInflator in dieser Klasse verwende gibt es Null Objektreferenz, aber während ich die gleiche Methode in meiner Hauptaktivität verwenden funktioniert es bitte jemand hilft mir, warum dies bei mir passiert?LayoutInflator gibt Nullobjektverweis auf derselben Syntax zurück, warum?

public class MenipulateCard extends Activity{ 
public LinearLayout myCard(
LayoutInflater myInflator = 
(LayoutInflater)getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     CardView view = (CardView) myInflator.inflate(R.layout.user_layout,null); 
     LinearLayout ml = new LinearLayout(this); 
     ml.addView(view); 
     return ml; 
    } 

es gibt null zurück Objektreferenz:

java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.Context android.content.Context.getApplicationContext()' on a null object reference at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2724) 

aber wenn ich die gleiche Methode in der Haupttätigkeit verwenden kann ich bekommen Linearlayout. Bitte helfen Sie mir, buddies

+0

nicht null ist haben Sie versucht context.getSystemServic() anstelle von getApplicationContext(). GetSystemService? – Darush

+0

Android Studio Popup nicht alle Kontext.getApplicationContext dafür knallt nur getBaseContext und getApplicationContext – Mudassir

+1

ich meine this.getSystemService() – Darush

Antwort

0

Verwenden Sie diese Methode statt, aber stellen Sie sicher, dass Ihr Kontext

View v = LayoutInflater.from(yourContext).inflate(int resource, ViewGroup root, boolean attachToRoot); 
Verwandte Themen