Probleme mit Design und der Funktionsweise von setContentView()

  • Antworten:3
CoKeCherry
  • Forum-Beiträge: 2

28.02.2013, 23:02:05 via Website

Hallo,

ich schreibe derzeit meine erste kleine sinnlose Android App. Grob gesagt geht es darum, dass der User ein Wort eintippt es durch Buttondrücken "abschickt" worauf anschließend Berechnungen damit durchgeführt werden und ein bestimmter Wert ausgegeben wird. Dazu habe ich zwei Activities gemacht, die mainActivity mit dem Textinput und dem Button und die "DisplayValue" Activity an die das Wort per Intent weitergeleitet wird und die Berechnungen durchgeführt werden. Anschließen gebe ich den Wert mit setContentView aus.
Soweit funktioniert alles super. Nun geht es an das Design. Ich verstehe nur leider nicht, wie ich genau das Design ändere? Ich hab einen Hintergrund für beide Acitivies gesetzt aber die DisplayValueActivity hat nach wie vor keinen. Somit verstehe ich auch nach langem googlen nicht, wie ich durch setContentView das Ergebnis, das ich printen will, irgendwie an meine DisplayValue-View leiten kann? Oder wie das allgemein ablaufen könnte?

Ich hoffe die Beschreibung war nicht zu umständlich und ich hoffe ihr könnt mir weiterhelfen.
Danke im Voraus für eure Mühe!

Liebe Grüße,
Jule

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

01.03.2013, 06:39:16 via App

Poste mal den Code deiner Display Activity.
Eine Variable gibt man nicht mit setContentView(); aus. Das dient dazu, dass in der Activity das richtige Design also das Android Layout gesetzt wird.

Machst du es so?:
1setCotentView(variable);
oder wie denn sonst.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
CoKeCherry
  • Forum-Beiträge: 2

02.03.2013, 18:43:38 via Website

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

// Get the message from the intent
//blabla...

// Create the text view
TextView resultView = new TextView(this);
resultView.setTextSize(40);
resultView.setText("Result: " + result);
resultView.setShadowLayer(2, 2, 2, Color.BLACK);

setContentView(resultView);
}

Antworten
Timo D.
  • Forum-Beiträge: 182

02.03.2013, 19:01:50 via Website

Was willst du genau machen? Willst du eine TextView hinzufügen? Wenn ja, dann geht das z.B. so bei einem LinearLayout:
1LinearLayout layout = (LinearLayout) findViewById(R.id.layout);
2 layout.setOrientation(LinearLayout.VERTICAL);
3
4
5 LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(
6 LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
7
8
9 LinearLayout row = new LinearLayout(YourAcitivty.this);
10 row.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
11 TextView yourTextView= new TextView(YourActivity.this);
12 //yourTextView.setPadding(30,10,0,0);
13 //yourTextView.setBackgroundResource(R.drawable.button);
14 yourTextView.setText("Text");
15 row.addView(yourTextView,layoutParams);
16 layout.addView(row, layoutParams);
Ansonsten wurde schon gut gesagt, was setContentView machen soll.

— geändert am 02.03.2013, 19:02:16

Sichern Sie Ihr Smartphone gegen Diebstahl und erhöhen Sie die Chance, es wiederzufinden. Jetzt neu: Guardian - Anti-Diebstahl Guardian - Anti-Diebstahl Pro https://play.google.com/store/apps/details?id=de.tapps.guardian.pro Guardian - Anti-Diebstahl Trial https://play.google.com/store/apps/details?id=de.tapps.guardian.free

Antworten