LinearLayout in Java erstellen - Elemente werden nicht angezeigt - Java, Android, View, Android-Linearlayout

Ich versuche, ein LinearLayout mit TextViews in Java zu erstellen, da die Anzahl der Elemente dynamisch angegeben wird, so dass die Verwendung von XML für mich nicht funktioniert. Hier ist ein kleiner Auszug aus meinem Code:

public class MyActivity extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

LinearLayout layout = new LinearLayout(this);
layout.setOrientation(LinearLayout.VERTICAL);
layout.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));


TextView titleView = new TextView(this);
titleView.setWidth(LayoutParams.WRAP_CONTENT);
titleView.setHeight(LayoutParams.WRAP_CONTENT);
titleView.setTextAppearance(this, android.R.attr.textAppearanceLarge);
titleView.setText("Hallo Welt!");
layout.addView(titleView);

setContentView(layout);

}
}

Wenn ich diese Aktivität starte, wird diese TextView nicht angezeigt, aber es wird auch kein Fehler angezeigt. Hat jemand einen Rat?

Antworten:

12 für die Antwort № 1

Versuche dies,

  LinearLayout layout = new LinearLayout(this);
layout.setOrientation(LinearLayout.VERTICAL);
layout.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));

TextView titleView = new TextView(this);
LayoutParams lparams = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
titleView.setLayoutParams(lparams);
titleView.setTextAppearance(this, android.R.attr.textAppearanceLarge);
titleView.setText("Hallo Welt!");
layout.addView(titleView);

setContentView(layout);

2 für die Antwort № 2
TextView titleView = new TextView(this);
titleView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
titleView.setTextAppearance(this, android.R.attr.textAppearanceLarge);
titleView.setText("Hallo Welt!");
layout.addView(titleView);
setContentView(layout);

1 für die Antwort № 3

Benutze diesen Code:

    LinearLayout layout = new LinearLayout(this);
layout.setOrientation(LinearLayout.VERTICAL);
layout.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));

TextView titleView = new TextView(this);
titleView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
titleView.setTextAppearance(this, android.R.attr.textAppearanceLarge);
titleView.setText("Hallo Welt!");
layout.addView(titleView);

setContentView(layout);

0 für die Antwort № 4

Versuche dies

titleView.setWidth(100);
titleView.setHeight(40);

oder

   titleView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));

Verwandte Fragen
Speisekarte