3 Stimmen

Füge das Layout-Ressource programmgesteuert hinzu.

Ich habe ein benutzerdefiniertes Layout namens "debug.xml" im Ordner "layout/", das programmgesteuert zu einem vordefinierten Layout in activity_main.xml mit dem Namen centerLayout hinzugefügt werden soll. Das "debug.xml" sieht ungefähr so aus:

Ich möchte dieses "debug_layout" in ein centerLayout einfügen:

LinearLayout centerLayout = (LinearLayout) findViewById(R.id.center_layout);
LinearLayout debugLayout = (LinearLayout) findViewById(R.id.debug_layout);
centerLayout.addView(debugLayout);

Aber es tritt eine NULL-Zeiger-Ausnahme bei "centerLayout.addView(debugLayout);" auf. Es scheint also, dass das debug_layout nicht initialisiert ist oder ähnliches. Kann mir jemand helfen?

4voto

Hellboy Punkte 1052

Sind Sie sicher, dass Ihr centerLayout nicht null ist? Wenn nicht, haben Sie es versucht?:

LinearLayout centerLayout = (LinearLayout) findViewById (R.id.center_layout);
LinearLayout debugLayout = getLayoutInflater().inflate(R.layout.debug, centerLayout, false);
centerLayout.addView(debugLayout);

2voto

ligi Punkte 38032

Sie müssen das debugLayout mit dem LayoutInflater aufblasen

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X